Software Engineer - Desktop Application
- San Francisco, CA
Who We Are
Take-Two develops and publishes some of the world's biggest games. Our Rockstar label creates Grand Theft Auto and Red Dead Redemption, two of the most critically acclaimed gaming franchises in history. Our 2K label creates games like NBA 2K, WWE 2K, Bioshock, Borderlands, Evolve, XCOM and the beloved Sid Meier's Civilization. Our Private Division label publishes Kerbal Space Program, The Outer Worlds, and will publish upcoming titles with Obsidian Entertainment, Panache Digital Games and more.
Take-Two Direct to Consumer
The Direct to Consumer team is a (well-funded) startup within Take-Two. We have offices in San Francisco and Vancouver and have built a culture that enables remote work. We're building a commerce and distribution platform for our game labels, partnering directly with our studios to bring value company-wide. Our team is small and agile - we release to our users quickly, and constantly iterate to elevate our product's quality. We seek regular feedback from our users and labels to make sure we are delivering at and above expectations. We believe in giving our studios the flexibility they need to create the world's greatest games, so we plan to offer a variety of interfaces using modern technology and best practices. Our success is measured by our impact on gamers and developers, not presentations or promises.
The Role Defined:
A Software Engineer - Desktop Application on the D2C team will develop our desktop launcher application and build easily integrated, efficient libraries to support game studios across Take-Two's labels and around the world. You will be working with system level code, mostly in C/C++, to help shape systems that will reach millions of gamers on multiple platforms.
As a member of the D2C Client team, you will work directly with top-notch engineers, product managers, and development partners at game studios to ensure the flexibility and efficacy of our desktop application and client libraries. You will participate in challenging projects involving graphics APIs, console and operating system SDKs, and launcher application features such as in-game overlay and digital rights management.
- Write and maintain well documented, high quality modern C/C++ code for multiple projects
- Build tests and integration tooling to ensure high quality code in an agile environment
- Collaborate on technical designs to meet product team, technical partner, and end user needs
- Research and propose solutions to problems across a broad range of topics, such as UI rendering, client-server communication, performance optimization, and more
- Work closely with fellow engineers and team members, and maintain a strong professional relationship based on communication, respect, and trust
- 3+ years of professional experience, focused in commercial desktop applications
- Experience in modern C/C++, especially relating to desktop applications, multithreading, API/SDK design, and client-server applications
- Experience with unit, integration, and functional test design and implementation
- Strong debugging skills, and the ability to quickly chart a path from bug report to viable solutions
- Ability to analyze and optimize code to meet strict performance requirements
- Drive to proactively identify opportunities for improvement in our systems and propose solutions
- Ability to work with minimal supervision, prioritizing and adapting to the needs of the team and leadership adeptly
- Strong written and verbal communication skills
- Experience working with game engines and/or gaming console SDKs
- Experience with frameworks that employ web technology in application design, such as CEF and Electron
- Experience with DirectX 9+, OpenGL, Vulkan and other graphics rendering technologies
- Experience in game and desktop video and audio capture, encoding, and/or streaming technologies
- Experience in Win32, MacOS, and Linux application development
- Working knowledge of Git, CI/CD, and build automation best practices
- A passion for performance and providing great end user experience
- A history of self-motivation and self-improvement throughout your career
Back to top