TDI Technologies, Inc. is seeking candidates for a ship control networks Software Engineer position. The position’s main responsibility will be to assist with advanced ship control network design, test, analysis, optimization, and life cycle management. The position will also include test support, documentation, configuration control, and interface development. This position will support fielded Machinery Control Systems on advanced Naval surface vessels. The candidate must be comfortable working with electrical, computer, and mechanical systems.
- 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
- Support systems level testing of multiple versions of software and manage defect identification and correction
- Review and analysis of technical documentation related to currently fielded and future systems
- Provide technical input to the design of future user interfaces and system features
Education and Experience Requirements:
- Bachelor of Science Degree in an engineering discipline - Computer Engineering, Electrical Engineering, Mechanical Engineering, Software Engineering or Computer Science is required.
- 1-3 years of experience in controls, networks, or software related engineering
- Experience with system integration and/or industrial controls, networks, automation, or cybersecurity is preferred
- 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.
Skills & Abilities:
- Software development and operation within Linux and Unix based systems (strong ability to navigate and script in Real Time / Red Hat Enterprise Linux (RHEL))
- Software development ability in Java
- Scripting with bash, shell, (also sed, awk, perl)
- Creating user interfaces using the Java Swing GUI toolkit
- Ability to read and compare Software Requirement Sheets (SRS) with code
- Shell scripting (primarily bash, also ksh and csh)
- Experience using Oracle or other SQL-based databases in applications development
- Understanding of mechanical and/or electrical systems integration with software
- Ability to work with Model View Controller (MVC) design patterns, rapid development frameworks
- Understanding of TLS, SSL, and encrypted communications protocols
- Experience managing software baselines using version control tools such as SubVersion or Git
- Network data exchange using TCP/IP, UDP, protocols, experience with Unicast, Broadcast, Multi-Cast transmissions
- Strong technical writing skills and attention to detail for documentation
- Willingness to lead a team and convey technical problems and solutions to a variety of team members
Additional Preferred Skills
- Software development in C++ (utilizing GNU Compiler Collection preferred)
- Familiarity with agile software development practices
- Knowledge of CORBA (particularly Java IDL), LDAP, and/or RTI DDS technologies
- Cisco IOS networking software and switch configuration
- Experience with vessel integration and control systems for maritime or naval applications
- Virtualization experience (ESXi and other VMWare products)
- Experience with "hard" and "soft" real-time systems
- Familiarity with Cygwin
- Ability to write in vi text editor
Travel: This position may require up to approximately 25% travel.
Location: Philadelphia, PA
Equal Employment Opportunity Policy: TDI Technologies, Inc. provides equal employment opportunities to all employees and applicants for employment and prohibits discrimination and harassment of any type. This policy applies to all terms and conditions of employment, including recruiting, hiring, placement, promotion, termination, layout, recall, transfer, leaves of absence, compensation and training.
To Apply: To be considered for a position at TDI Technologies, Inc., please click here.