Embedded Software Engineer

29 Nov 2024

Vacancy expired!

Solidus is searching for an Embedded Software Engineer to join a group that develops, builds, tests, and operates laser communications systems for a variety of applications and environments.

Responsibilities: - Prototype new concepts, participate in the development of systems, and provide support to deployed systems. - Work includes embedded software design, code implementation and testing to support a variety of high-fidelity software-in-the-loop and hardware-in-the-loop prototypes. - Participate in developing cross platform, distributed and multi-processor object oriented code for embedded applications.

Required Skills: - U.S. Citizen and active Secret Clearance - MS and minimum 8 years of experience; PhD preferred - Experience developing embedded software for communication systems through the complete life-cycle from requirements analysis, design, implementation, integration and test - Experience developing drivers and support software for custom-designed hardware boards. In lieu of custom-designed hardware; experience developing drivers and support software for consumer off-the-shelf hardware boards is acceptable - Experience developing C/C software for a real-time operating system (RTOS) such as vxWorks - Understanding of object oriented analysis and design in addition to programming language skills in C and C - Willing to work in a multi-disciplinary team environment. Team members will work with inter-disciplinary teams to develop advanced communication system prototypes, and testing with both internally and externally developed systems. - Good communication skills: willingness to listen to the needs of engineers and the ability to articulate solutions to engineers in other disciplines who possess little understanding of embedded software systems

Must Haves: - Firmware - Real-Time Embedded Systems (ROS, VxWorks, Xenomai, Linux) - Real-Time Software/Hardware - Software Documentation - C/C Programming - Embedded Software - Object Oriented Software Design and Development - Scripting Languages: Perl, Python, Shell Scripting, PowerShell - Software Design/Development - Multithreaded and Multiprocessor Applications - Software Testing

Preferred Skills: - Designing for multi-core ARM processors architectures - Developing Board Support Packages (BSP) for microprocessors to be used in configuration and controlling FPGAs - Green Hills INTEGRITY RTOS - Understanding of digital logic design - Experience designing for high-reliability applications - Experience with event based control loops and state machines - Familiarity with developing software interfaces supporting data transfer over Ethernet, especially for network booting using Trivial File Transfer Protocol (TFTP) or similar

Job ID: 4092

Applicants selected must meet eligibility requirements for access to classified information. U.S. Citizenship may be required. Solidus is an Equal Opportunity Employer and participates in E-Verify. NOTICE OF AFFIRMATIVE ACTION PLAN FOR INDIVIDUALS WITH DISABILITIES, DISABLED VETERANS AND OTHER PROTECTED VETERANS. It is the policy of this Company to seek and employ qualified individuals at all locations and facilities, and to provide equal employment opportunities for all applicants and employees in recruiting, hiring, placement, training, compensation, insurance, benefits, promotion, transfer, and termination. To achieve this, we are dedicated to taking affirmative action to employ and advance in employment qualified individuals with disabilities, disabled veterans, and other protected veterans. The objective in adopting the Affirmative Action Programs is to place qualified individuals with disabilities, disabled veterans and other protected veterans in all job classifications. These Affirmative Action Programs are available for inspection by any applicant or employee by contacting the Company's EEO Coordinator, in the Human Resources office, Monday through Friday, 8am to 5pm.

Please Note: Solidus does not accept applications from agencies, 3rd party vendors, or applications with incomplete information.