Software Engineer
- Discuss this with your agent
- Open in Claude
- Open in ChatGPT
Prepare application
- Draft this with your agent
- Open in Claude
- Open in ChatGPT
Role details
Tech stack
+14 more
Job description
Our purpose is to deliver energy to the world, today and tomorrow. For over 100 years, bp has focused on discovering, developing, and producing oil and gas in the nations where we operate. We are one of the few companies globally that can provide governments and customers with an integrated energy offering. Delivering our strategy sustainably is fundamental to achieving our ambition to be a net zero company by 2050 or sooner., We are growing our digital capabilities at bp, and we’re looking for a Software Engineer who is excited to shape the future of energy through technology. In this role, you will deliver features that will be used by teams throughout the business, help other teams adopt modern engineering standards, and help us deliver software that powers bp’s global operations. You’ll join a team that values curiosity, collaboration, and continuous learning, and you’ll have the opportunity to influence how we design, build, and operate our digital products., As a Software Engineer, you’ll contribute hands-on to building, improving, and operating reliable software while collaborating closely with your team and stakeholders. In this role, you will:
- Contribute to the design and implementation of scalable, secure, and resilient software solutions.
- Work with your tech leads to deliver on team priorities aligned with bp’s broader strategy.
- Collaborate with other engineering teams across bp to help adapt and integrate their solutions with the Yalla stack.
- Write high-quality, production-ready code in languages such as C#, Python, Java, or Go, and be willing to learn new technologies when needed.
- Work closely with product managers, designers, and fellow engineers to build solutions that make effective use of the Yalla stack.
- Implement and deliver changes to our platform in a timely and reliable manner.
- Follow and uphold established software engineering standards and best practices across bp.
- Develop, maintain, and improve CI/CD pipelines to support reliable and repeatable releases.
- Support configuration and release processes to ensure smooth and predictable deployments.
- Share knowledge with teammates, support other engineers when appropriate, and contribute positively to a collaborative team culture.
- Design, implement, and optimize relational databases and data models in support of application needs.
- Support live services by improving monitoring, reliability, and responding to incidents when required.
- Participate in system design discussions, providing input and feedback under the guidance of senior engineers.
- Apply secure coding practices and follow bp’s information security policies and standards.
- Contribute to delivery planning, progress tracking, and execution of digital initiatives within your team.
Requirements
We’re looking for someone who enjoys solving meaningful technical problems and working collaboratively with others. You’ll thrive in this role if you have:
- Experience working as a Software Engineer on production systems, with growing technical ownership of your work.
- A solid understanding of Agile development and modern software engineering practices.
- A collaborative mindset and the ability to communicate clearly with engineers, product managers, and other stakeholders.
- Hands-on experience with CI/CD pipelines, build automation, or release processes.
- Practical experience designing and working with relational databases and data models.
- Proficiency in at least one common high-level programming language (e.g. Java, C#, Python, Go, JavaScript, TypeScript), with exposure to or interest in learning others.
- Familiarity with container-based development (e.g. building, running, or deploying containerised applications).
- An understanding of secure software development principles and how to apply them in day-to-day coding.
- Experience contributing to production-ready systems, including logging, monitoring, and reliability considerations.
- The ability to participate in system design discussions and understand architectural trade-offs, with guidance from senior engineers.
- Experience using Git-based source control and working with common branching strategies., Agility core practices, Agility core practices, API and platform design, Cloud Platforms, Collaboration, Communication, Configuration management and release, Continuous deployment and release, Creating a high performing team, Digital Project Management, Documentation and knowledge sharing, Emerging technology monitoring, Facilitation, Information Security, Mentoring, Metrics definition and instrumentation, NoSql data modelling, Problem Solving, Relational Data Modeling, Risk Management, Scripting, Secure development, Service operations and resiliency, Software Design and Development, Solution Architecture {+ 6 more}
Benefits & conditions
There are many aspects of our employees’ lives that are meaningful, so we offer benefits to enable your work to fit with your life. These benefits can include flexible working options, a generous paid parental leave policy, excellent retirement benefits, among others!
Apply for this position
This job is hosted externally. Click below to view the full posting and apply.
Prepare application
- Draft this with your agent
- Open in Claude
- Open in ChatGPT
Good distractions
Talks and stories from around this role — technically off-topic, practically not.
Moments
Explore playlistsVideos
See allRelated articles
See all
Data Engineer Salary UK
Fully Remote Software Engineer Jobs
The 12 Best Jobs for Software Engineers
Where To Find Software Engineering Jobs