Title of Position: Software Developer Level 3
Description of Position:
- Leads a team that designs, develops, and tests application software to fulfill unique requirements on Windows, Unix, or other specified platforms.
- Builds applications using a specified programming language per the Government.
- Builds Graphical User Interfaces (GUIs) for custom applications.
- Responds to evolving requirements in an agile environment.
A successful candidate should be able to develop object-oriented programs utilizing software lifecycle management techniques (e.g., Scrum, Agile) as well as utilizing continuous integration systems and configuration management programs (e.g., jenkins, bamboo, jira, confluence). The primary responsibility for a candidate will be to refine and understand existing tools, create new tools, and generate tests to ensure tools work across multiple environments.
The primary development languages will be C, C++, and Python scripting.
Candidates will be responsible for owning the development and maintenance of tools, be able to clearly document and articulate to customers.
Experienced candidates are expected to be subject matter experts in a particular technology area, and be able to mentor, train, and guide junior engineers.
Education and Experience Required:
Experience programming in various languages (C, C++, Python)
Experience developing with object-oriented languages
Experience implementing software lifecycle management
Experience leading teams to design, develop, and test software on various platforms
Experience developing continuous integration and build environments for CNO tools
- Minimum eight (8) years experience programming with object-oriented programming languages
- Minimum five (5) years experience developing Windows applications using Visual Studio or .NET environments OR minimum five (5) years experience developing UNIX applications using make files or comparable build environments
- Experience developing complex programs using, C, C#, C++, Java, or other comparable languages
- Minimum three (3) leading projects that develops complex software, ensuring a collaborative environment, and configuration management
- Experience implementing software life cycle management (requirements, design, develop, test, validate, deploy).