Cloud Back-End Software Engineer
Stirling, Scotland
Peacock Technology is looking for an Cloud Back-End Software Engineer to join our research and development team.
At Peacock Technology we are connecting our experience in robotics and artificial intelligence to deliver ongoing solutions to help food producers improve long term food sustainability and animal welfare. We provide a range of products using robotics, machine vision and sensing technologies to monitor cow condition and provide farmer insights for disease prevention and welfare. Our development team includes highly qualified engineers, including engineers with PhDs in Software Engineering, Mathematics and Mechanical Engineering. We also have close working relationships with universities, colleges, and research organisations.
As part of our commitment to advancing technological solutions, we are seeking a highly skilled Cloud Back-End Software Engineer with expertise in Python and AWS to join our team. This role focuses on designing, building, and deploying scalable cloud-based systems that are vital to our animal health monitoring products.
Job Description
As a Cloud Back-End Software Engineer, you will play a crucial role in designing, developing, and deploying cloud-based microservices that power our advanced monitoring systems. You will leverage AWS cloud technologies to deliver scalable and high-performance solutions for our clients in the dairy industry. You will collaborate with cross-functional teams, including front-end developers, data scientists, and DevOps engineers, to ensure seamless integration and optimal performance of our systems.
Responsibilities
Design, develop, and deploy scalable cloud-based microservices using AWS technologies, including Lambda, ECS, and EC2.
Develop and maintain robust back-end services and APIs using Python.
Work with relational databases (e.g., MySQL) and non-relational databases (e.g., DynamoDB or Redis) to manage and process large datasets.
Implement and manage containerized applications using Docker and ECS.
Collaborate with DevOps teams to ensure seamless deployment and continuous integration/continuous deployment (CI/CD) pipelines.
Optimise and enhance the performance, scalability, and security of back-end services.
Conduct code reviews, write unit and integration tests, and maintain technical documentation.
Work closely with front-end developers, UX/UI designers, and product managers to ensure end-to-end system integration
Qualifications and Experience
Bachelor’s or master’s degree in computer science, Software Engineering, or a related field.
4+ years of experience in software engineering, with a strong focus on back-end development and cloud-based solutions.
Proven experience with Python and AWS services, including Lambda, EC2, ECS, S3, and RDS.
Hands-on experience with Docker and container orchestration using ECS or Kubernetes.
Solid understanding of microservices architecture and RESTful API development.
Experience with relational databases (e.g., MySQL, PostgreSQL) and familiarity with non-relational databases (e.g., DynamoDB, MongoDB).
Strong knowledge of DevOps practices, including CI/CD pipelines, automated testing, and infrastructure as code (IaC).
Familiarity with Git and version control systems.
Eagerness to learn new technologies and apply best practices in cloud development.
Desirable Skills
Knowledge of serverless architecture and event-driven design patterns.
Experience with NoSQL databases and big data technologies.
Working knowledge of cloud security best practices.
Experience in the agriculture or food production industry is a plus but not required.
Understanding of machine learning models and data pipelines.
What we’ll offer you in return
Full-time, Contract, Permanent
Excellent remuneration
34 days holiday entitlement
Private health and wellness scheme
Additional bonus scheme available
As part of the interview process, you will be expected to join a first stage video call and a second, face to face at our office in Stirling.