Electronic Arts Inc. is a leading global interactive entertainment software company. EA delivers games, content and online services for Internet-connected consoles, personal computers, mobile phones and tablets.
The Software Engineer role is responsible for collaborating with QA and Development to identify and create tools, automation and technical strategies with the goals of improving game infrastructure and increasing efficiencies in the QA process. This person needs to have senior experience as they willplay a key role in ensuring a seamless consumer experience by focusing on upstream quality and targeting defect prevention and containment. They will identify new technologies and develop new tools for testing and tracking purposes. They will assist with the creation and analysis of testing strategies, improving automation efforts and white box testing,
Driving technology usage and support:
- Working with Dev and QA partners to identify areas of improvement through new tools and automation strategies.
- Design, develop and deploy internal software tools.
- Build, test, and deploy solutions that support automation deliverables.
- Support an increased adoption of automation and tools within game teams. Aid in the identification and requirements gathering for new tools.
- Identify and recommend debug and telemetry enhancements to aid testing.
- Providing technical expertise and debug support to other engineers on our teams.
- Participating in knowledge sharing sessions - increasing knowledge of existing tools, automation and testing processes.
- Perform risk analysis of new features – identifying impact and scope.
- Assist with prioritizing bug fixing efforts and identifying areas of test focus.
- Perform and support white box testing.
Partner with QA project management to:
- Proactively contribute to the test and technology strategies of the QA group.
- Escalate risks and recommend upstream tools, automation and processes.
- Proactively analyze metrics, trends and processes to provide meaningful information with sound reasoning.
- Provide performance results analysis on current processes and infrastructures.
- Bachelor's degree in Computer Science, Computer Engineering, Software Engineering or equivalent
- 5+ years of professional experience with a focus on concepts and language varieties. Experience with C#, Java, C++ and/or other comparative programming languages. Deep C# knowledge and experience is a key requirement for this role.
- Strong understanding of the software development life cycle, software engineering methodologies and practices, and their application to both development and QA.
- Excellent understanding of software quality assurance concepts, debugging processes and procedures.
- Web-based systems experience an asset.
- Scripting experience with Python, Perl, PHP, or Lua is an asset.
- Knowledge in gaming consoles or embedded systems is an asset
- Successfully interface with internal customers with a diverse set of backgrounds and needs - able to speak their language, appreciate their challenges, and maintain their respect.
- Strong written and verbal communication skills.
- Technical writing knowledge and experience is an asset.
- Experience using MS Office (Outlook, Word, Excel, PowerPoint).
- Proactive in completing tasks and escalating issues appropriately.
- Strong problem solving and analytical skills.
- Excellent observational and organizational skills – detail oriented.
- Creativity and logical thinking: can find ingenious solutions to problems.
- Adaptability/flexibility: not afraid of change and strives for it if it's for the good of the project - is not afraid to try new things and possibly fail.