International Staff Consulting
Sr Embedded Software Engineer, Satellite Hardware
International Staff Consulting, Poway, California, us, 92074
Work on hardware that goes on the latest satellites, which is a fast-growing industry. You will work in a small engineering environment where there is no multiple levels of management so you will work directly with those making the decisions.
Essential Functions:
Provide technical expertise within the Engineering department to solve difficult software challenges or problems or to bring in new technical capabilityDesign, develop, document and test embedded software for space productsDevelop C or assembly code for Bootloaders, BSP, VxWorks 6.9 or 7.0 and future versions, Embedded Linux, RTEMS device driversAble to debug, test, and verify component and board designs through softwareDevelop test programs, test plans, and verification plansRepresent Engineering in technical customer discussions / meetingsAssist Manufacturing Engineers with technical assistance with production issuesAble to Develop and Maintain Python based desktop GUI applications to control and monitor Automated Test Equipment (pyvisa, nidaqmx)Responsibilities :
Product Specifications : Implement innovative approaches and develop clearly written design specifications that ensure PDC's products are designed to succeed in the market relative to their technical performance, feature set, cost and time to market goals.Architecture : Facilitate the design of complex products by leading and coordinating engineering teams of varied technical disciplines through clearly documented architectural level design documents. Lead the decision and tradeoff process for issues that cross hardware/software or other technical discipline boundaries.Design (and Develop ): Perform original and innovative software design and distill large-scale designs into architectural elements that facilitate the division of design work to teams of two or more engineers.Planning : Develop plans, schedules, and identify resources required to develop products from market requirement through product release. Identify risk areas and develop contingency plans to eliminate or mitigate risk that could result in schedule delays or failure to meet
specification or design plan requirements.Innovation : Conceive methods for achieving product requirements and specifications using appropriate software architecture and design techniques. Anticipate possible difficulties and develop alternate methods.Maintenance : Provide support for maintaining existing products by investigating and resolving defect reports, creating documentation, and creating and releasing new versions of software packages.Continuous Improvement : Take the initiative to research, develop, propose, evaluate and/or implement new methods, processes, techniques, tools, components, or technology that improve quality, timeliness and/or performance of PDC's products or the efficiency or cost effectiveness of PDC's engineering work. Modify existing SOPs or create new SOPs to implement new processes.Qualifications
Required Knowledge, Skills and Abilities:
Fluent in C and Python, strong VxWorks, Linux, and Bare Metal embedded background, development of bootloaders, BSP, VxWorks 7, Linux, and RTEMS device drivers test code and scriptsFamiliarity with Buildroot and or Yocto Linux build systemsGood understanding of NAND FLASH memory file systems, drivers, and implementationSkilled in low level hardware code development and debugging. Skilled with debuggers/In-circuit emulators.Experience and skills in debugging using lab equipment and other toolsAbility to work in a team setting effectivelySuccessfully problem solves and manages conflictHas analytical, evaluative, and objective critical thinking skillsEducational / Experience Qualifications:
Bachelor's Degree in Computer Science, Computer Engineering, or a related field, Master's degree is a plus10+ years relevant work experience
Essential Functions:
Provide technical expertise within the Engineering department to solve difficult software challenges or problems or to bring in new technical capabilityDesign, develop, document and test embedded software for space productsDevelop C or assembly code for Bootloaders, BSP, VxWorks 6.9 or 7.0 and future versions, Embedded Linux, RTEMS device driversAble to debug, test, and verify component and board designs through softwareDevelop test programs, test plans, and verification plansRepresent Engineering in technical customer discussions / meetingsAssist Manufacturing Engineers with technical assistance with production issuesAble to Develop and Maintain Python based desktop GUI applications to control and monitor Automated Test Equipment (pyvisa, nidaqmx)Responsibilities :
Product Specifications : Implement innovative approaches and develop clearly written design specifications that ensure PDC's products are designed to succeed in the market relative to their technical performance, feature set, cost and time to market goals.Architecture : Facilitate the design of complex products by leading and coordinating engineering teams of varied technical disciplines through clearly documented architectural level design documents. Lead the decision and tradeoff process for issues that cross hardware/software or other technical discipline boundaries.Design (and Develop ): Perform original and innovative software design and distill large-scale designs into architectural elements that facilitate the division of design work to teams of two or more engineers.Planning : Develop plans, schedules, and identify resources required to develop products from market requirement through product release. Identify risk areas and develop contingency plans to eliminate or mitigate risk that could result in schedule delays or failure to meet
specification or design plan requirements.Innovation : Conceive methods for achieving product requirements and specifications using appropriate software architecture and design techniques. Anticipate possible difficulties and develop alternate methods.Maintenance : Provide support for maintaining existing products by investigating and resolving defect reports, creating documentation, and creating and releasing new versions of software packages.Continuous Improvement : Take the initiative to research, develop, propose, evaluate and/or implement new methods, processes, techniques, tools, components, or technology that improve quality, timeliness and/or performance of PDC's products or the efficiency or cost effectiveness of PDC's engineering work. Modify existing SOPs or create new SOPs to implement new processes.Qualifications
Required Knowledge, Skills and Abilities:
Fluent in C and Python, strong VxWorks, Linux, and Bare Metal embedded background, development of bootloaders, BSP, VxWorks 7, Linux, and RTEMS device drivers test code and scriptsFamiliarity with Buildroot and or Yocto Linux build systemsGood understanding of NAND FLASH memory file systems, drivers, and implementationSkilled in low level hardware code development and debugging. Skilled with debuggers/In-circuit emulators.Experience and skills in debugging using lab equipment and other toolsAbility to work in a team setting effectivelySuccessfully problem solves and manages conflictHas analytical, evaluative, and objective critical thinking skillsEducational / Experience Qualifications:
Bachelor's Degree in Computer Science, Computer Engineering, or a related field, Master's degree is a plus10+ years relevant work experience