As a Senior Quality Assurance Engineer for Microsoft 365 Integrations, you will be a core member of our Integration Hub development team.
You Will Have The Opportunity To
- Help define solutions to meet business need
- Craft and drive a technical/business process and architectural design
- Support our project teams building complex Workplace Solutions using state of the art Microsoft technologies centring on Office 365, Teams, SharePoint and Azure.
About Bp/team
bp’s Technology organization is the central organization for all software and platform development. We build all the technology that powers bp’s businesses, from upstream energy production to downstream energy delivery to our customers. In this team, you will work with others building Integration Solutions for our Microsoft 365 Productivity platforms such as SharePoint, Teams, Power Platform and more recently, Microsoft Copilot. There are always overlapping requirements to integrate with other platforms and we plug the gaps. We encourage our teams to adapt quickly by using native Azure and AWS services, and enable them to pick the best technology for a given problem but for the most part, this Team works with Microsoft 365 Platforms and Azure Services. As a Senior Software Development Engineer in Test (SDET), you work within a team to test software for bp colleagues and external users. The Senior SDET ensures high-quality software delivery by planning, implementing, and automating quality assurance testing.
Responsibilities
As a Senior Software Development Engineer in Test, you will be part of a cross-disciplinary team, working closely with other software engineers, product management, UX design, data scientists, data analysts, product managers, data engineers, data managers, and business partners.
- Lead efforts to work with users and business analysts to understand requirements and ensure comprehensive coverage.
- Drive the design, development, and testing of custom software applications, providing guidance and best practices.
- Supporting and maintaining your software. We believe in DevOps – you build it, you run it!
- Monitoring and applying emerging technologies.
- Plan and implement testing (e.g., regression, functional, non-functional, data validation, system integration, load, or performance, security, pen, UI & Mobile tests) for new and existing functionality.
- Work closely with development teams to design testing strategies and integrate testing into the development process.
- Plan, create, execute, and automate test cases, working with business partners, developers, and other stakeholders.
- Document and analyze test results and recommend corrective action.
- Isolate, reproduce, manage, and maintain defects and test case databases, and verify fixes.
- Support user acceptance testing conducted by business partners or end users.
- Conduct exploratory testing and risk analysis for complex features e.g., those that span across platforms or teams.
- Identify opportunities to reduce testing time and effort by automating repeatable tests.
- Design and maintain the test automation frameworks with different tools and technology.
- Lead efforts to optimize testing processes and frameworks for efficiency and effectiveness.
- Understand and apply automated testing approaches such as model-based testing or record-and-replay.
- Drive continuous improvement initiatives within the QA team and across the organization.
- Research, recommend, and implement new testing technologies and practices, such as incorporating machine learning.
- Define and champion quality and testing best practices among development teams.
- Collaborate and share information with other software QA engineers e.g., by participating in a community of practice.
Technical Skills we need from you
- Bachelor’s degree in Computer Science, Engineering, Computer Information Systems, or equivalent work experience.
- Skillful in the ability to adapt to new technologies and processes and be able to work independently and as part of a team.
- Skillful in problem-solving, with the ability to analyze complex problems, identify root causes, and develop creative and effective solutions.
- Excellent communication skills and ability to communicate with your peers through to senior leaders. You should be able to engage and influence others to collect requirements, describe what you’re doing, work through problems, and find productive solutions.
- Self-starter, able to handle ambiguity, navigate uncertainty, identify risks, and find the right people and tools to get the job done.
Software Skills
- Skillful in at least one programming language Java, JavaScript, C# or Python.
- 8+ years of software development and testing experience.
- Skillful in creating and maintaining test automation frameworks (e.g., Playwright, Selenium, Cypress, Rest Assured, Appium, JMeter, K6)
- Skillful in software engineering practices & best practices for the full software development life cycle, including coding standards, code reviews, source control management, continuous deployments, testing, and operations.
- Skillful in software testing methodologies and best practices throughout the software development life cycle, encompassing test automation, test case design, execution, and result analysis.
- Expertise in analyzing complex software systems, identifying potential quality issues, and developing innovative and effective solutions to enhance testing efficiency and effectiveness.
- Ability to clearly communicate testing strategies, results, and impacts on software quality to peers and senior leaders. Skilled in influencing others to prioritize quality in software development processes.
Infrastructure Skills
- Understanding of cloud services relevant to testing such as virtual machines, containerization (Docker, Kubernetes), and serverless architectures.
- Skillful in troubleshooting and maintaining test environments and automated testing frameworks.
- 5+ years of experience in developing, supporting, and troubleshooting automated testing frameworks and systems.
- Proficiency in script development for automation tools (e.g., Playwright, Selenium, Appium, Cucumber) and integration into CI/CD pipelines.
- Skills in monitoring test environments using tools like AWS CloudWatch, Azure Monitor, or similar. Ability to analyze performance metrics and implement improvements to optimize testing processes.
Database Skills
- Capable with Relational and NoSQL database systems, understanding how to query, adjust, and optimize for testing requirements.
Skills that set you apart
- Possess a passion for mentoring and coaching engineers in both technical and soft skills