Innovative Defense Technologies (IDT)
Software Engineer
Job Description
All applicants must be able to obtain/maintain an active U.S. Security Clearance. Responsibilities Include:
- Contributing to every stage of the AIML software development lifecycle: design, code, review, test, integration, debugging, deployment, and maintenance of high performance and scalable software.
- Successfully take tasks from beginning to end, using strong organization, planning, and prioritization skills.
- Demonstrate excellent teamwork and communication skills to collaborate with other teams and stakeholders in a dynamic and geographically distributed team environment.
- Champion best practices to improve code quality, such as integration and unit testing, static analysis, and documentation.
- Ability to work on-site at IDT’s facilities or travel to customer sites on a limited, as-needed basis
Minimum Required Qualifications:
- Bachelor’s degree in Computer Science or related technical discipline
- Minimum 3 years’ experience in software engineering
Required Skills:
- Practical engineering experience with Java and Build Tools
- Practical engineering experience with Python and Build Tools
- Experience with container technologies such as Docker and Kubernetes
- Experience building scalable, distributed service-oriented software solutions utilizing modern frameworks and design patterns.
- Working knowledge of developing software on Linux operating systems, especially with hands-on knowledge of networking fundamentals, protocols, and standards (TCP/IP, TLS, DNS).
- Basic knowledge of AI/ML concepts.
Preferred Skills:
- Strong knowledge of web protocols and standards ((HTTP, REST, OAuth, GRPC)) and their application in a microservice architecture, especially in the context of a modern framework such as Spring.
- Basic understanding of the mathematical foundations of widely used ML approaches (regression, neural networks, etc.)
- Experience with industry-standard DevOps tooling, such as Maven or Gradle, Jenkins, and Git.
- Experience with containerized software deployment and container orchestration platforms such as Kubernetes.
- Experience with relational databases such as PostgreSQL, particularly interfacing with a database using technologies such as JDBC, JPA, or Hibernate.
- Experience with the frontend portion of full stack development – Javascript or Typescript with modern frameworks and build systems, such as React, Redux, and Webpack.
- Experience with virtualization technologies.
- Experience with designing and architecting software systems that meet requirements and maintenance living documentation of system designs.
- Strong troubleshooting and debugging skills.
- Interest in AI/ML as a discipline and a desire to identify, learn, and apply new software technologies.
Competencies:
- Excellent verbal and written communication skills
- Strong organization skills
- Self-motivated to learn and improve
Pay Range*: $85,500 – $139,650 or $102,600 – $179,550 *Pursuant to New Jersey Senate Bill 2310 IDT is required to disclose the “pay scale” or “pay range” associated with a job posting. Notably, however, this amount may not be reflective of actual compensation that may be earned as pay is dependent on a candidate’s experience, skills, and education. The posted range does not include bonuses, commissions, tips, or other benefits. Click here for additional information about Senate Bill 2310. IDT is often looking to place multiple candidates at various levels. Therefore, more than one pay range has been included, commensurate with experience. EEO Statement:Applicants, employees, and former employees are protected from employment discrimination based on race, color, religion, sex, pregnancy, sexual orientation, gender identity, national origin, age, disability, veteran status, genetic information, or any other basis protected by federal, state, or local law.