Software Developer
TLDR
Contribute to advanced ship control systems software development for Naval vessels, collaborating within a team while supporting systems engineering and user interface design.
Develop and maintain software systems for advanced Naval surface vessels; The ideal candidate is able to learn and work on large, existing software systems and ongoing projects
Support systems engineering efforts for ship control network design, test, analysis, optimization, and life cycle management
Work within a team to troubleshoot complex problems in networked systems and test operational software
Review and analysis of technical documentation related to currently fielded and future systems
Provide technical input on the design of future user interfaces and system features
Support systems level testing of multiple versions of software and manage defect identification and correction
EDUCATION AND EXPERIENCE REQUIREMENTS:
Bachelor of Science/Engineering Degree in an engineering discipline - Software Engineering, Computer Science, Computer Engineering, Electrical Engineering, or Mechanical Engineering preferred; Other STEM degrees still encouraged to apply
3 to 7 years experience in software, controls, or network engineering
SPECIAL REQUIREMENTS:
Successful applicants must either have an active government security clearance or the ability to receive approval upon position acceptance.
Must have a valid US passport or the ability to obtain one upon position acceptance.
Essential Skills:
Software development in C/C++, Java, and Python, in Windows and Linux environments
Strong code reading skills and ability to understand large, existing software projects, both deployed and in active development
Strong software estimation skills at a wide range of project scales
Understanding MVC software design patterns
Strong technical writing skills and attention to detail in documentation
Strong interpersonal communication skills and ability convey technical problems and solutions to a variety of team members
Nice-to-Have Skills:
Understanding of system integration and/or industrial controls, networks, automation, or cybersecurity
Familiarity with agile software development practices
Software versioning systems such as Subversion and Git
vi text editor
Unix shell scripting
Java Swing GUI toolkit
Oracle or other SQL-based databases
Virtualization
Cygwin
TLS, SSL, and encrypted communications protocols
Network data exchange using TCP/IP, UDP, protocols, experience with Unicast, Broadcast, Multi-Cast transmissions
Experience with vessel integration and control systems for maritime or naval applications
All your information will be kept confidential according to EEO guidelines.
COVID-19:
During the Pandemic, TDI employees are required to Telework in accordance with TDI’s Telework Policy. This position may require occasional travel to government and military customer sites which would follow Government and CDC travel guidelines established during the Pandemic to provide the utmost safety for our employees. These policies are subject to change at any time by TDI Management.
Travel:
This position may require up to approximately 5% travel.