Software Engineer in Test - Compiler
11 days ago
PlayStation isn’t just the Best Place to Play — it’s also the Best Place to Work. Today, we’re recognized as a global leader in entertainment producing The PlayStation family of products and services including PlayStation®5, PlayStation®4, PlayStation®VR, PlayStation®Plus, acclaimed PlayStation software titles from PlayStation Studios, and more.
PlayStation also strives to create an inclusive environment that empowers employees and embraces diversity. We welcome and encourage everyone who has a passion and curiosity for innovation, technology, and play to explore our open positions and join our growing global team.
The PlayStation brand falls under Sony Interactive Entertainment, a wholly-owned subsidiary of Sony Corporation.
How would you like to influence the most successful gaming platform of all time, by testing and analyzing the very technology our PlayStation developers use to build our best selling games?
Sony Interactive Entertainment has an extraordinary opportunity in the R&D department! We are looking for a motivated and creative individual to help build tools and infrastructure for analyzing the quality of PlayStation® CPU compilers (and related technology).
As a Software Engineer in Test, you will directly contribute to PlayStation technology by ensuring that the tools required to build all of PlayStation's games are at the highest possible quality. This is also a learning opportunity to develop a keen understanding of compilers, and to engage with the larger LLVM community on patch submissions, code reviews, and design discussions. If this interests you, please apply!
- Crafting and improving the testing tools and frameworks used for ensuring high quality LLVM-based C/C++ compilers. You will be adding to and improving a Python-based test infrastructure and general ecosystem.
- Supervising the state of our test infrastructure - including automated build and regression test results, and reporting problems.
- Analyzing reported issues – including issues reported from PlayStation licensees (typically PlayStation®5 game developers). This involves writing test-cases or test applications (written in C and C++) to verify the reporter’s original issue, and confirm proposed software fixes. Analyzing these issues may involve analyzing low-level CPU code generation, and debugging behavior.
- Writing sample applications and/or scripts demonstrating the results from novel and groundbreaking CPU compiler / LLVM research (as targeted to gaming consoles, or for improving game developers’ development experience).
- Developing techniques for runtime benchmarking of real-time code.
- Analyzing low-level runtime performance data captured from a game or application running on PlayStation® hardware, and writing succinct, understandable summaries of performance numbers and behavior observed (so team members understand performance trade-offs).
- Researching new tools for building and analyzing PlayStation® software.
Tools and Technology used in this position include
- Visual Studio.
- PlayStation® software development kits (SDKs).
- Software automation and continuous integration tools such as Jenkins.
- Source control (e.g. Git) for all systems, including Jenkins Groovy scripts (pipeline as code).
- Python tools written using Python 3 features such as type hinting.
- Software repositories such as Artifactory.
- Containerization technology such as Docker and Kubernetes.
- Distributed build systems such as SN-DBS.
- Proficient in Python programming. (Multiple academic or industry projects completed, 2+ years programming experience.)
- 2+ years of experience programming in C++; modern C++ experience (e.g. C++17).
- Experience building, running, and debugging software in both Windows and Linux environments.
- Desire to learn all about compilers and their associated toolchains.
- Having a passion for automation with the ability to discuss the pros and cons of various automation approaches.
- Experience with LLVM technology is a strong plus.
- Prior experience with PlayStation® SDK development is helpful.
- Writing unit and integration tests.
- Groovy script coding experience (for Jenkins pipelines).
- Knowledge of fuzz testing is a plus.
- Windows container experience is another strong plus.
- Familiarity with Unreal Engine or other game engine technology.
- Familiarity with PlayStation products and games.
Create Your Profile — Game companies can contact you with their relevant job openings.
Equal Opportunity Statement:
Sony is an Equal Opportunity Employer. All persons will receive consideration for employment without regard to gender (including gender identity, gender expression and gender reassignment), race (including colour, nationality, ethnic or national origin), religion or belief, marital or civil partnership status, disability, age, sexual orientation, pregnancy or maternity, trade union membership or membership in any other legally protected category.
We strive to create an inclusive environment, empower employees and embrace diversity. We encourage everyone to respond.
PlayStation is a Fair Chance employer and qualified applicants with arrest and conviction records will be considered for employment.