Smoking Gun Interactive, a Keywords Studio, is an industry-leading game development studio founded in 2007 by award-winning industry veterans. SGI is fearless in creating IP and boldly partners with renowned brands to develop a wide range of world-class, immersive titles and interactive experiences that resonate with strategy gamers worldwide and entertain millions of casual players every day.
We offer competitive salaries, great benefits, and a creative and driven work environment with our passionate team of talented professionals on high quality projects.
As a Lead Programmer at Smoking Gun Interactive (SGI), you’re a talented and driven person who enjoys working on great projects. You have experience in a variety of areas of game development and are able and willing to work on any area of game programming needed, with a focus on full-stack development experience. You’re experienced in mentoring and training programmers and are responsible for the oversight and management of a team of programmers.
In this role you will:
Collaborate with the Technical Director to establish a unified technology vision for the project including writing and reviewing technical design documents;
Produce high-quality, efficient, clean, and modular code;
Collect and document users' requirements and develop logical specifications;
Research, evaluate and synthesize technical information to design, develop and test computer-based systems;
Develop data, process and network models to optimize architecture and to evaluate the performance and reliability of designs;
Plan, design and co-ordinate the development, integration and operation of computer-based systems;
Assess, test, troubleshoot, document, upgrade and develop maintenance procedures for applications software;
Lead and co-ordinate teams in the development of software and integrated information systems, process control software and other embedded software control systems;
Show proactivity in identifying tasks/problems that need tackling, outside of known scheduled work, from refactoring to bug fixing;
Be able to go above and beyond in their daily tasks as required;
Provide mentorship and training for programmers to create an atmosphere of cooperation and learning;
Provide and accept feedback on all aspects of code quality (performance, readability, testability, design);
Demonstrate forward thinking in regards to what impact design and implementation decisions will have on the overall project during each phase of development;
Work with Production in the creation and risk-management of project milestone goals and schedules;
Coordinate the hiring, supervising and managing of other members of the team.
To be successful in this role, you must have:
5+ years’ experience as a programmer in the game industry and or related field;
A bachelor’s degree in Computer Science, Engineering or equivalent;
Passion for playing and creating innovative games – you consider yourself a gamer;
A natural affinity for being strongly self-motivated and an independent worker;
Expert working knowledge of C++, Standard Library and Object Oriented Design;
Strong understanding of general and 3D math, statistics and probability;
Excellent problem-solving abilities, proven ability to tackle hard problems in creative ways;
Excellent Oral and written communication skills;
A positive attitude with a desire to work within a team environment towards a common goal;
Impressive ability to estimate work load and execute on the work in the time estimated.
It would also be great if you had experience with:
Any of the following languages, C#, Java, Lua, HLSL/Cg shaders;
Mobile: iOS, Android;
Test Driven Development;
Visual Studio, Perforce;
Unit testing and TDD for server development;
C# server environments, AWS, Azure, GCP;
Running a live server environment and supporting operations.
10 days vacation leave
5 paid days personal leave
7 paid sick days
Life Insurance & Accidental Death & Dismemberment
Dependent Life Insurance
Long Term Disability (LTD)
Extended Healthcare Benefit
Training & Development