Digital Science & Engineering is a cross-functional team involved in all phases of our application and service release lifecycle. Embracing and promoting the DevOps & SRE methodologies. Software Engineers are responsible for developing applications and leveraging the strategic tools and platforms to maximize business competitive advantage. In this role you will have the opportunity to apply your technical skills in software development, platform engineering and automation. To promote best-practice and support the broader organization by implementing the guiderails to operate safely. This role will help build maturity and forge greater adoption of Agile delivery across BP.
- Contributes and collaborates to assist designs, implements, maintains reliable and scalable server-side software.
- Is hands-on and actively contributes to code.
- Adheres to and advocates for software engineering best practices (e.g. technical design, technical design review, unit testing, monitoring & alerting, checking in code, code review, documentation),
- Responsible for deploying secure and well-tested software that meets privacy and compliance requirements; Consumes approved DevSecOps enabled CI/CD pipelines.
- Adheres to agile methodology and operates and builds DevOps maturity. Ensuring delivery of business incremental change safely and reliably.
- Actively contributes to building DevOps maturity, incrementally and measurably improving delivery velocity.
- Mentors others.
Education, Experience & Job Requirements:
- With 8-10years experience with Degree Level or equivalent in computer science or related subject.
- Broad experience designing, planning, implementing, maintaining, and documenting solutions.
- Depth of experience to recommend appropriate platforms for any given business requirements.
- Deep knowledge and development experience in:
- cloud-based platforms, specifically Azure and use of its native services
- React Native or Progressive Web Apps
- Expertise in designing and implementing micro-services architectures
- Expertise in designing and implementing large-scale distributed systems
- Expertise in and hands-on experience of areas such as data structures, database table design, algorithm design, runtime complexity, system architecture (scalable, reliable, redundant design), API design, security and privacy best practices, at scale monitoring, logging & alerting, testing best practices.
- Strong communication skills and ability to talk at all levels across the organization. Ability to engage and influence is of paramount importance. Able to decompose technical considerations that everyone can understand is key. and stakeholder management and ability to lead organizations through influence
- Continuous learning and improvement mindset (for themselves and others)
- No prior experience in the energy industry required.
- Knowledge of IoT integration patterns and protocols
- Complete tasks quickly and thoroughly, owns issues and is highly dependable.
- Highly responsible, self-motivated, and able to thrive in an energetic, fast paced, high growth environment. Exhibits ownership of projects and tasks assigned
- Excellent organizational skills required to adapt to a constantly changing technical environment
- Strong team player with a customer service orientation with the ability to forge relationships at all levels of the company and across diverse cultures
- Have excellent communication skills – written, verbal and interpersonal.
- Ethical, honest, fair and of high integrity.