Software Engineer
Location: Cheltenham
INTRODUCTION
We are looking to hire a skilled Software Developer to join our dynamic and innovative team. As a Software Developer, you will be responsible for designing, implementing, and maintaining high-performance, scalable software solutions using Python and related technologies. You will collaborate closely with cross-functional teams to develop and deploy robust web applications, leveraging your expertise in Flask, MongoDB, HTML, CSS, Bootstrap, JavaScript, RESTful services, Docker, AWS, Jenkins, and Git.
RESPONSIBILITIES
- Design, develop, and maintain Python-based web applications using the Flask framework.
- Implement efficient data storage solutions using MongoDB.
- Create responsive and visually appealing user interfaces using HTML, CSS, and Bootstrap.
- Enhance user experience through dynamic client-side scripting with JavaScript.
- Develop and integrate RESTful services to support seamless communication between frontend and backend systems.
- Containerise applications using Docker for streamlined deployment and scalability.
- Deploy and manage applications on AWS cloud infrastructure.
- Implement continuous integration and continuous deployment (CI/CD) pipelines using Jenkins.
- Collaborate with cross-functional teams to understand requirements and translate them into technical solutions.
- Ensure code quality, performance, and security through rigorous testing and code reviews.
- Utilise version control systems, particularly Git, for managing the codebase and collaboration.
EXPERIENCE / REQUIREMENTS
- Bachelor's degree in Computer Science, Software Engineering, or a related field (or equivalent work experience).
- Proven experience (1.5 years) as a Python Developer, with a focus on web development.
- Proficiency in the Flask framework and MongoDB database design and management.
- Strong understanding of web technologies including HTML, CSS, Bootstrap, and JavaScript.
- Experience building and consuming RESTful APIs.
- Familiarity with containerisation technologies such as Docker.
- Hands-on experience with cloud platforms, particularly AWS.
- Knowledge of CI/CD tools such as Jenkins for automated deployments.
- Solid understanding of version control systems, particularly Git.
- Excellent problem-solving and analytical skills.
- Strong communication and collaboration abilities.
ADDITIONAL REQUIREMENTS
- Occasional UK travel may be required to attend team or customer meetings, events, and training activities.
- Flexible working arrangements are available; however, there is value placed on teams being co-located in offices. Applicants are encouraged to discuss what may be possible during the application stage.