Lead Programmer

Smoking Gun Interactive
Remote

About The Position

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. Whilst this position is being offered on a remote basis, we are only able to consider applicants who are currently located in BC, and ideally within the greater Vancouver area.

Requirements

  • 5+ years’ experience as a programmer in the game industry and or related field
  • A bachelor’s degree in Computer Science, Engineering or equivalent
  • Shipped at least one game as a senior or lead programmer
  • 3+ years’ experience using Unreal Engine 4 or 5
  • 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
  • Experience mentoring other programmers

Nice To Haves

  • Managing programmer direct reports
  • Any of the following languages, C#, Java, Lua, HLSL/Cg shaders
  • Unreal Engine 4 or 5
  • 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

Responsibilities

  • 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

Benefits

  • 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
  • Dental Care
  • Hybrid working
  • Training & Development
© 2026 Teal Labs, Inc
Privacy PolicyTerms of Service