At a Glance
- Tasks: Design and develop innovative software solutions for energy trading applications.
- Company: Join bp, a leader in sustainable energy solutions with over 100 years of experience.
- Benefits: Enjoy flexible working, generous parental leave, and excellent retirement benefits.
- Other info: Be part of a diverse team with great career growth opportunities.
- Why this job: Make a real impact in the energy sector while growing your tech skills.
- Qualifications: Experience in software development, particularly in Java or C#, and strong teamwork skills.
The predicted salary is between 70000 - 90000 £ per year.
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.
About the role:
The role reports to a Technical Lead in London and will provide the development and support capability whilst being co-located with Traders, Schedulers/Operators, Exposure Analysts, Commodity Risk Analysts and Finance. ST&S is looking to derive competitive advantage and commercial differentiation from the use of technology in our trading and middle office activity. This position will be part of a team building & supporting applications to provide that capability.
We are looking for a Full Stack Software Engineer to supply, develop and maintain the digital products in our RPT Middle Office Technologies landscape. As a Staff Software Engineer, you will work closely with and provide leadership to other software engineers, product managers, UX designers and data engineers and our business partners. You will actively lead in feature development, performance enhancements and offer technical support to other teams. You will operate with a strong product approach and take end-to-end accountability for the platforms and services you own.
Key Accountabilities:
- Design sophisticated backend components, services, platforms, and Restful APIs for seamless communication with the front end.
- Continuously review the services and components and seek opportunities for improvements.
- Design and implement scalable, resilient, and observable software solutions.
- Identify and address Tech Debt.
- Influence and deliver the product roadmap to improve our Key Performance Indicators and deliver tangible business value.
- Develop the team's Software Engineering skills.
- Own the team's culture and ways of working, instilling a care for high quality code and tests and for implementing procedures.
- Hands-on development in Java and C#.
You will work closely with key business users and partners. Also, you will work directly with the Tech Lead on the evolution of the current technology platform and the long-term strategy and roadmap. This unique role is well positioned to create substantial value for the business and requires an individual with the right mix of software engineering and communication skills.
Use Claude Code to rapidly prototype features, refactor code, and generate unit tests for improved code quality.
Essential Education:
Bachelor / masters degree in computer science or equivalent experience.
Essential Experience and Job Requirements:
- Demonstrated ability in IT industry with experience in designing, planning, implementing, maintaining, and documenting solutions.
- Experience working with small teams of bright people.
- Well versed in Software Engineering development techniques and protocols like TDD, BDD.
- Strong Software Engineering Design capabilities and understanding of Computational Complexity.
- Strive for excellence and continuous improvement in software architecture, software delivery and guidelines.
- Strong experience in developing Cloud Native applications on different Platform as a Service solutions (e.g. GKE, Openshift, AEKS, Cloud Foundry etc).
- Experience in reactive applications programming constructs and Domain Driven Design.
- Proficiency in one or more Programming Languages such as Java, C#, Scala, GO, Python etc.
- Experience with large-scale messaging solutions such as Kafka, RabbitMQ, or ActiveMQ.
- Database design and knowledge of PostgreSQL or My-SQL.
Desirable criteria:
- Experience in Trading systems or ETRMs (Energy Trading & Risk Management).
- Operational experience of running business critical systems.
- Understanding concepts such as Actor Models, Event Sourcing, CQRS etc.
- Experience in leading a regional squad of engineers.
- Strong system design and architectural skills.
Why join us?
At bp, we support our people to grow in a diverse and exciting environment. We believe that our team is strengthened by diversity. 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!
We will ensure that individuals with disabilities are provided reasonable accommodation to participate in the job application or interview process, to perform essential job functions, and to receive other benefits and privileges of employment. Please contact us to request accommodation.
Reinvent your career as you help our business meet the challenges of the future. Apply now!
Travel Requirement: No travel is expected with this role.
Relocation Assistance: This role is not eligible for relocation.
Remote Type: This position is a hybrid of office/remote working.
Skills: Agility core practices, API and platform design, Cloud Platforms, Collaboration, Communication, Configuration management and release, Continuous deployment and release, Creating a high performing team, Database Design, 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 Modelling, Risk Management, Scripting, Secure development, Service operations and resiliency, Software Design and Development.
Staff software engineer employer: Bp Energy
At bp, we pride ourselves on being an exceptional employer that fosters a diverse and inclusive work environment, particularly for our Staff Software Engineers in London. We offer flexible working options, generous parental leave, and excellent retirement benefits, all aimed at supporting our employees' personal and professional growth. Join us to be part of a forward-thinking team that values innovation and collaboration while contributing to a sustainable energy future.
StudySmarter Expert Advice🤫
We think this is how you could land Staff software engineer
✨Tip Number 1
Network like a pro! Reach out to current employees at bp or in similar roles on LinkedIn. A friendly chat can give you insider info and might even lead to a referral.
✨Tip Number 2
Prepare for the interview by brushing up on your technical skills. Practice coding challenges and be ready to discuss your past projects in detail. We want to see how you think and solve problems!
✨Tip Number 3
Show your passion for technology and energy! Be ready to discuss how your skills can help bp achieve its net zero ambition. We love candidates who align with our mission.
✨Tip Number 4
Don’t forget to apply through our website! It’s the best way to ensure your application gets seen. Plus, it shows you’re serious about joining our team.
We think you need these skills to ace Staff software engineer
Some tips for your application 🫡
Tailor Your CV:Make sure your CV is tailored to the Staff Software Engineer role. Highlight your experience with Java, C#, and any cloud platforms you've worked with. We want to see how your skills align with our needs!
Craft a Compelling Cover Letter:Your cover letter is your chance to shine! Share your passion for software engineering and how you can contribute to our mission at bp. Let us know why you're excited about this opportunity!
Showcase Your Projects:Include links to any relevant projects or code samples in your application. We love seeing practical examples of your work, especially if they demonstrate your ability to design scalable and resilient software solutions.
Apply Through Our Website:Don't forget to apply through our website! It’s the best way for us to receive your application and ensures you’re considered for the role. Plus, it’s super easy to do!
How to prepare for a job interview at Bp Energy
✨Know Your Tech Stack
Make sure you’re well-versed in the technologies mentioned in the job description, like Java, C#, and cloud platforms. Brush up on your knowledge of RESTful APIs and database design, as these will likely come up during technical discussions.
✨Showcase Your Leadership Skills
As a Staff Software Engineer, you'll be expected to lead and mentor others. Prepare examples of how you've successfully led projects or teams in the past, focusing on your ability to foster collaboration and improve team culture.
✨Prepare for Problem-Solving Questions
Expect to tackle some coding challenges or system design questions. Practice common algorithms and data structures, and be ready to discuss your thought process while solving problems. This will demonstrate your analytical skills and software engineering expertise.
✨Understand the Business Context
Familiarise yourself with bp's mission and how technology plays a role in their operations. Be prepared to discuss how your work can contribute to their goals, especially around sustainability and efficiency in energy trading.