Salary: £50,000 - 90,000 per year Requirements: We are looking for a Software Engineer with experience working on production systems and growing technical ownership of your work. We need someone with a solid understanding of Agile development and modern software engineering practices. We are looking for a collaborative communicator who can work effectively with engineers, product managers, and other stakeholders. We require hands-on experience with CI/CD pipelines, build automation, or release processes. We need practical experience designing and working with relational databases and data models. We require proficiency in at least one high-level programming language such as Java, C#, Python, Go, JavaScript, or TypeScript, with interest in learning others. We value familiarity with container-based development, including building, running, or deploying containerised applications. We expect understanding of secure software development principles and the ability to apply them in day-to-day coding. We are looking for experience contributing to production-ready systems, including logging, monitoring, and reliability considerations. We need the ability to participate in system design discussions and understand architectural trade-offs with guidance from senior engineers. We require experience using Git-based source control and common branching strategies. Responsibilities: We contribute to the design and implementation of scalable, secure, and resilient software solutions. We work with tech leads to deliver team priorities aligned with our broader strategy. We collaborate with engineering teams across our organization to adapt and integrate their solutions with the Yalla stack. We write high-quality, production-ready code and learn new technologies when needed. We work closely with product managers, designers, and fellow engineers to build effective solutions using the Yalla stack. We implement and deliver platform changes in a timely and reliable manner. We follow and uphold established software engineering standards and best practices across our organization. We develop, maintain, and improve CI/CD pipelines to support reliable and repeatable releases. We support configuration and release processes to ensure smooth and predictable deployments. We share knowledge with teammates, support other engineers when appropriate, and contribute to a collaborative team culture. We design, implement, and optimize relational databases and data models to support application needs. We support live services by improving monitoring, reliability, and responding to incidents when required. We participate in system design discussions and provide input and feedback under the guidance of senior engineers. We apply secure coding practices and follow our information security policies and standards. We contribute to delivery planning, progress tracking, and execution of digital initiatives within our team. Technologies: C# CI/CD Git Support Java JavaScript Python Security TypeScript Cloud NoSQL More: We are bp, and our purpose is to deliver energy to the world, today and tomorrow. With more than 100 years of experience in discovering, developing, and producing oil and gas, we provide governments and customers with an integrated energy offering and are working toward becoming a net zero company by 2050 or sooner. We are growing our digital capabilities and offering an opportunity to shape the future of energy through technology as part of a collaborative team that values curiosity, collaboration, and continuous learning. We support our people with a diverse and exciting environment, flexible working options, generous paid parental leave, excellent retirement benefits, and reasonable accommodations for individuals with disabilities. This is a hybrid office/remote role with no travel expected and no relocation assistance available. last updated 20 week of 2026