Embedded Software Engineer
Title: Embedded Software EngineerLocation: REMOTE ALLOWED. Must work EST hoursDuration: Minimum 1 year, high possibility of extensionWork Status: US Persons, no clearances requiredLevel: mid to senior levelHours: Approx. 40 per week, overtime 1-2 times per yearStart date: ASAPSpecial Note: In the last 4 months, we have filled 35 headcounts with this client, and we have 20+ more active headcounts to fill during the remainder of the year. So this client is on a hiring boom and with this many hires, the project will be very long-term.Position SummaryThe Software Engineer will participate in the full life-cycle software development effort for space electronics embedded systems. This includes project planning, software requirements analysis and definition, software design, software unit and integration testing, software acceptance testing, and integration and testing support through product delivery.Required QualificationsBachelor’s degree in Computer Science, Computer/Electrical Engineering or related technical degreeSenior Level: 6+ years of related experience with a Bachelor’s degree or 4+ years with a Master’s degreeExperience developing software in C and C++Experience developing for Linux platformsExperience developing and debugging software for embedded platformsExperience with software development processes, standards, and product configuration management tools such as Subversion or Git within an Agile development environmentExperience developing for embedded operating systems such as Linux, FreeRTOS, VxWorksExperience developing high-reliability software for low-power, embedded systems.Duties and ResponsibilitiesLeads in the design and development of new software features for existing products and new applicationsPerforms software development over the full software life cycle process across multiple projectsWorks independently or as part of a small team to complete assignmentsWorks with cross functional design team to design, develop and test new embedded software/firmware/hardware; support and enhance existing embedded systemsSupports interfacing disciplines such as firmware, mechanical, RF, hardware, integration & test, and project managementPerform other duties as assigned.Preferred QualificationsExperience using embedded Linux development tools such as YoctoExperience developing software for embedded systems deployed in space, marine and/or other rugged environments.Experience developing Linux kernel modules and device driversExperience developing graphical user interfaces using Python librariesExperience developing embedded networking softwareExperience addressing cybersecurity vulnerabilities in software productsExperience with hardware integration, test and debug tools (logic analyzers, scopes, emulators) and board bring-up/verification in an electronic lab environment