Job Location: Tempe, Arizona

Position will create the next generation of simulations for testing, teaching and training in Law Enforcement and other areas. In this role you must be able to work independently and, in a team setting to deliver a wide range of solutions to meet VirTra’s software needs. The work can range from a full application or simulation to a small modification adjustment or improvement to an existing subsystem.

VirTra’s Software Developers are idealistic and passionate about both technology and software development. Attention to detail and consideration of proper coding principals should be the focus of any developer. The ultimate goal of any software developer is to design and develop innovative code that is robust, clear, maintainable and bug free.
This position interacts with other staff but is not customer facing. It may require supervision of the work of other developers.

Essential Functions:

• Actively participate as a team member in a SCRUM methodology. Plan -> Build -> Test-> Review.
• Write clean efficient code based upon specifications, design documents or directions from supervisor or team
• Maintain and modify existing code to improve or fix bugs that are assigned by supervisor or team
• Write well design and testable code
• Learn and use S.O.L.I.D principles at all times
• Utilize MVVM for WPF and XAML related work
• Troubleshoot and debug existing systems
• Clearly communicate concerns, questions or ideas to the team
• Recommend solutions or improvements for existing products and code base
• Maintains one or more subsystem
• Adds entire feature or subsystem at the direction of senior members according to design documents
• Produce documentation and supporting information for use by customers and internally when necessary

Required Proficiencies:

• C/C++ or C#
• Visual Studio 2017
• Version Control such as Subversion or GIT
• DirectX or OpenGL
• Familiarity with Agile Development Methodologies
• Ability to learn and adapt to new languages and technologies
• Clear ability to communicate clear technical considerations and choices
• Required to interact with other staff
• Detail Oriented

Physical Demands:

While performing the duties of this job, the employee is regularly required to talk, hear and speak. Often will be required to sit and work at a computer for long periods of time which requires repetitive motion of the wrist, hands and/or fingers.

Education and Experience:

• 6+ Years’ Experience in Software Development
• 2 Years’ experience in a leadership role in software development
• BS degree in CS, Engineering or similar field

Additional Requirements:

• Typical work schedule: 8:00 to 5:00, Monday – Friday but flexible work hours required which could include evening or weekend work due to project demands.