To design, test and develop new features from internal and external customer requests Improve and maintain internal and external software systems for data analysis, website delivery, data transfer and big data analytics framework Participate in code review of own and other developer's code in accordance with code review guidelines. Manage own workload of jobs as tasked by the R&D Manager and Software Developer Team Leader using JIRA task management tools. Identify and propose process and system improvements. Apply agile software development and test driven development methods to software development activities. Configure and maintain software / system deployment scripts. Develop and maintain a Windows and Linux based data transfer unit (DTU), including interfacing with USB device drivers and transforming low level data formats. Develop and maintain data export formats for third party applications. Develop integrations with third party applications (mostly web-based). Provide internal and external training of internally developed software systems. Produce and maintain technical product documentation. Mentor junior developers' technical product understanding and provide coaching to meet internal coding best practices. Plan software releases and follow the release procedures.You'll be great for this role if you have the following experience: Proven experience as a Python programmer Ability to create SQL queries SQL database administration, in particular PostgreSQL Website front-end development, specifically in responsive web design Experience with JavaScript, jQuery, HTML and CSS (they use Less) Agile development methodologyIf you have experience with the following it is a bonus: Use of Django web framework Experience with big data analysis e.g. Spark, AWS/Azure, Map Reduce, Elastic Search Knowledge of deployment frameworks e.g. Fabric, Docker Use of Continuous Integration frameworks e.g. Jenkins, Travis, Bamboo