Job Description:
Torch Technologies, a 100 percent employee-owned company, is seeking a professional Mid-Senior Enterprise Services Developer to join a team currently developing a virtual training device. Candidates applying for this position will have the opportunity to build and integrate server-side software technology with interactive visualization products for educating and training soldiers, sailors, airmen, marines, and civilians.
The candidate selected for this position will be a member of an agile development team working closely with other developers, artists, and subject matter experts to develop a virtual training device. The ideal candidate must be able to work well both independently and within a multi-disciplinary collaborative team environment. The teams are developing a virtual training device framework and customer applications using the framework.
Expectations and Responsibilities:
- As a member of the Services and Tools Team within the Advanced VizLab, you are expected to be a positive, pro-active, and contributing team member, both with the Scrum team, Services and Tools Team, lab, and across the company.
- You will collaborate daily with fellow developers, artists, and subject matter experts to develop top-tier training products for military and commercial customers.
- You will be responsible for executing all aspects of the Software Development Life Cycle (SDLC) including documentation and maintenance as a full stack developer.
- Everyone on the team is expected to write well-designed (SOLID), testable code and we work together to help make that happen.
- We are integrating software components into a fully functional software system frequently to assure the increments we create fit the whole system.
- You will be called on at times to troubleshoot, debug and upgrade existing systems.
- Everyone on the team conducts peer reviews including detailed feedback.
- You will develop flowcharts, layouts and documentation to identify requirements for new features, as well as extending and refactoring existing capabilities.
- You will document services the services you create and automate generation of client SDKs with Swagger.
- We are working to enhance and extend our automated test plans to achieve > 80% test coverage on test services.
- You will contribute daily to the collective goals of your Scrum team and the Services and Tools Team.
- You will ensure software is updated with latest features using the relevant frameworks.
Job Requirements:
- A Bachelor’s Degree in Computer Science or Software Engineering and more than 5 years of professional development experience.
- Must be a team player and know the importance of listening to others. Be a positive, active, and contributing member of the team.
- Exceptional interpersonal communications skills. Able to effectively communicate in verbal and written form.
- Must be proactive and help with problem-solving.
- Able to work independently, prioritize and meet deadlines.
- Must be organized, able to manage multiple projects simultaneously, and anticipate business needs.
- Offer advice and suggestions for improving the development process.
- Excited to explain complex technical concepts and share knowledge with diverse audiences both internally and externally.
- Enjoys helping mentor fellow engineers as they develop new skills and advance in their careers.
Technical Requirements:
- Hands-on experience in software engineering and up to date on best practices.
- Proven work experience as a Software Engineer or Software Developer.
- Experience working in a Scrum team with examples of success.
- 3 or more years of experience working with Javascript, HTML5, SQL and one of the following languages: C#, Java, C++.
- Experience with a database (Oracle, MySQL, PosgreSQL, Sql Server).
- Experience writing unit tests using the above listed technologies.
- Experience working with Docker.
- Experience working with micro-services.
- Experience writing well tested, clean code and building CI/CD pipelines to deliver solutions as quickly as possible.
Desired but Not Required Experience:
- Machine Learning algorithms.
- Engineering streaming data pipelines for offline analytics.
- Data warehouse development and maintenance.
- Developing with NoSQL or Graph database.