Advanced Lead Engineer – Embedded Software Development
Company | GE Aerospace |
---|---|
Location | Grand Rapids, MI, USA |
Salary | $Not Provided – $Not Provided |
Type | Full-Time |
Degrees | Bachelor’s, Master’s |
Experience Level | Senior |
Requirements
- BS + 5 years of related software engineering experience or MS + 2 years of experience in Computer Science, Electrical Engineering, Mathematics, Physics, or related fields
- Proficiency in C, C++, or equivalent languages
- U.S. Citizen with the ability to obtain or currently holds a security clearance
Responsibilities
- Designs and/or programs/develops a small module or a large component, feature, set of features, whole feature area or entire embedded software product
- Define and formalize system, hardware, software, and human integration requirements
- Define and execute engineering test, validation, and verification activities
- Follow established software development methodologies and principles and document your tasks and designs
- Validate and verify software designs in a diversity of system integration environments – from local desktop computer simulations to fully representative flight tests
- Implement protocols and algorithms for resource-constrained environments and collaborate with the hardware team to enable communication between modules and applications
- Ensure software robustness, resilience, and fail-safe operation for critical devices, and mitigate potential safety and security vulnerabilities
- Create detailed design and technical documentation, optimize existing applications, and implement new features
- Participate in task prioritization, execution, requirements, specifications, code and design reviews, and mentorship across the software development life cycle
- Apply best practices for software engineering and understand the key business drivers and product roadmap
- Deliver your work to support project scope, cost, and schedule targets, and interface effectively with all levels of the organization and customers
- Propose novel solutions to technical challenges, generate cost and time estimates for future bids and programs, and utilize hardware/software to demonstrate capability against customer expectations
Preferred Qualifications
- Master’s degree in engineering or computer science with extensive experience in Ada, C/C++ for embedded software design, development, and testing
- Knowledge of scripting languages (Python, Perl, Tcl, etc.) and code management tools (Git, CVS, SVN, Perforce, etc.)
- Experience with RTOS (Linux, FreeRTOS, QNX, VxWorks, etc.) and device drivers for complex systems using parallel processing, multi-threading, distributed processing, multi-core, SoM, and/or secure processing
- Experience with embedded software testing, debugging, and integration on hardware using debuggers (gdb, lldb, etc.), test equipment (scopes, analyzers, multi-meters, etc.), and UARTs, JTAGs and oscilloscopes
- Experience working in mission-critical industries (aerospace, automotive, defense, first responder, medical devices, etc.) and turning CONOPS, Specifications or Requirements into software design, code, test plans and execution
- Innovative, critical thinking and troubleshooting skills and proficiency with IDEs, version control tools, defect tracking tools and scripting tools
- Experience with bare metal software design and optimization for cycles and memory and fundamental facility with compilers, build and source code control tools
- Experience with model based engineering on Cameo
- Outstanding written and verbal communication skills
- Knowledgeable of system interfaces (e.g. Ethernet, Mil-Std-1553, Serial)
- Knowledgeable of component interfaces (e.g. I2C, SPI, PCIe)