The Principal Software Engineer plans, leads, and performs a variety of tasks across the areas of software requirements analysis, software architecture and design, implementation (code and unit test), documentation, hardware-software integration, troubleshooting, problem solving, and software verification testing. The Principal Software Engineer: • Plans, leads, and executes efforts to architect, design, develop, maintain, upgrade, port, and verify/qualify embedded product software and/or product support software to enhance, implement and support project/system functionality.