BP has embarked on an ambitious plan to modernize and transform using digital technologies to drive efficiency, effective and new business models. You are a Software Engineering Lead, motivated to deliver mission critical enterprise database products as a service in the cloud and on premise.
The Lead Software Engineer will perform complex systems analysis, design and development programs. They will play an active role as a leader, consultant and individual contributor on all parts of the application architecture. They must provide analytical advice in identifying and implementing new IT uses in order to help clients and the company reach strategic objectives. They must be able to manage resources, coordinate development tasks and supervise technical project plans. They often collaborate with IT, operations and development staff through the software development life cycle. Finally, they must maintain a smooth-running operation through identifying and recommending improvement processes.
You will operate in a dynamic and commercially focused environment, with the resources of one of the world's largest IT departments, and some of the world's leading IT vendors at your fingertips.
At IT&S, all the roles are within Chapters. While your role will continue to remain within the Chapter, your initial activities described below may change over time. Key Dimensions
- Mentor and lead Software Developers and Engineers ensuring alignment with the agile culture and development standards
- Ensures commercially viable database product lines through direct customer interaction, market research, competitive analysis, and partnership with the Solution Architect
- Provides technical leadership and design and build test suites and frameworks to test. This hands-on position requires broad engineering competence and in-depth technical knowledge of application software development, as well as demonstrated experience successfully planning, organizing, and running projects in a dynamic environment.
- Must have a demonstrated track record of delivering test automation, quality requirements, designing functional and performance test suites and producing deliverables that exceed commitments.
- Responsible for the architecture of test automation solutions, determining current limitations and compatibilities between systems, the selection of new concepts and methodology, and the development of major routines and utilities.
- Reviews and critiques technical requirements and software design specifications and software implementation instilling best practices for test suite automation and frameworks and documentation, making sure designs meet requirements, and delivering high quality software on tight schedules
- Develops new API features to serve web and mobile clients
- Build reusable code and libraries for future use
- Ensures the technical feasibility of the product API
- Optimizes application core components for maximum speed and scalability
- Delivers scalable, test-able, and reliable applications and components
- Be a champion of our agile culture
- Owns the outcome of the product being built to achieve the vision for the service
: You will lead the delivery of algorithm and software development support for Upstream Technology. You will optimize new and existing research codes to ensure they run effectively. You must be able to lead software development projects and ensure effective computational solutions are developed. You will also help lead the evaluation, testing and implementation of new computing ideas and technology. Safety and Compliance
: Safety of our people and our customers is our highest priority. You will advocate and help ensure our architectures, designs and processes enhance a culture of operational safety and improve our digital security.Desired Education
Essential Experience and Job RequirementsTechnical capability:
- Educated to Degree level or equivalent
- AWS Certified Solutions Architect - Associate
- ITIL Service Management Foundation certification
- SAFe for Teams
Leadership and EQ
- Advanced understanding of Microsoft Azure and Amazon AWS
- Proficient in modern software design patterns, automated testing and fault-tolerant systems
- Proficient in designing scalable and and maintainable IT architecture, large scale data stores and cloud-based systems
- Proficient in building scalable data pipelines and scalable domain specific languages
- Proficient in modern API and User Interface development using modern web and mobile frameworks Proficient in C#, Python, TypeScript and all .Net frameworks
- Proficient in using the Atlassian suite of tools including JIRA, Confluence, and Bitbucket Proficient in CI/CD, DevOps, and agile ways of working including the common practices of Scrum, Kanban, KanPlan, and ScrumPlan
- Proficient in Git code versioning including branching and merging to enable continuous integration and continuous delivery methodologies
- Proficient in performing the system level integration tests (both manual and automated), Cross Browser testing, Load Tests, Data Driven Tests
- Proficient in writing test cases and test plans
- Proficient in performing Load, Performance and API testing for highly scalable systems
- Able to develop and test own code throughout the software testing pyramid
- Able to learn and adapt quickly to AWS and Azure roadmap and technology changes
- Able to build and maintain Software Test Automation Frameworks including driving processes and improving and simplifying QA Process.
- Able to design and automate test cases to validate complex software systems including white-box and blackbox tests and develop supporting testing tools.
- Able to create software tools to perform verification and regression tests for modern Web UI and Serverless application architectures built using the latest technology like the ASP.NET Core 2.
- Able to think critically, with excellent analytical and problem-solving skills while considering the big picture
- Understands various software architectures and implement the test solutions for Web Forms, MVC, WebAPI using ASP.NET, Dockers & Containers, Micro-Services, Serverless, and AWS and Azure REST APIs.
- Has good leadership skills, can learn fast, demonstrate the aptitude for continuous learning, out-of-the box thinking and able to handle multiple tasks and responsibilities at any given time
- 8+ years software development
- You always empower people - encouraging positive team morale and ensuring that every team member with expertise has the power to make decisions, at the lowest possible level.
- You always get the basics right, from quality development conversations to recognition and ongoing performance feedback. You can develop, coach, mentor and inspire others.
- You comply with BP's Code of Conduct and ensure your team does too. You also demonstrate strong leadership of BP's Leadership Expectations and Values & Behaviours.
- You create an environment where people listen and can speak openly about the good, the bad, and the ugly, so that everyone can understand and learn.
- You embrace a culture of change and agility, evolving continuously, adapting to our changing world.
- You are an effective team player, naturally looking beyond your own area/organizational boundaries to consider the bigger picture and/or perspective of others, and building trust-based relationships with leaders and employees across IT&S and BP.
- You are self-aware and seek input from others on your impact and effectiveness.
- You apply judgment and common sense at scale - you use insight and good judgment to deliver commercially sound, efficient and pragmatic decisions and solutions and to respond to situations as they arise.
- Cultural fluency - you operate across cultural boundaries with sensitivity.