Back to Jobs
GCR Professional Services

Principal Software Engineer (Embedded Systems) at GCR Professional Services

GCR Professional Services Hawthorne, California

Job Description

Principal Software Embedded Engineer (Location:El Segundo, CA area, about 15 miles south-east of Los Angeles) Job Summary: This position is focused on the role of principal software engineering in the design and development of embedded systems. Client is looking for a candidate who has experience in many areas, including information retrieval, distributed computing, large-scale system design, embedded systems and networking. Essential Job Duties and Responsibilities: Define and implement scalable, modular, and maintainable embedded software architectures. Guide teams in developing firmware and software for microcontrollers, DSPs, and SoCs. Lead the selection of software frameworks, operating systems (RTOS, Linux, or bare-metal), and development tools. Ensure software designs meet real-time performance, power efficiency, and security requirements. Collaborate with hardware engineers to optimize system performance and resource utilization. Establish best practices for software development, including modularity, reusability, and design patterns. Required Skills and/or Experience Needed: PhD or MS in Computer Engineering, Electrical Engineering, or a related engineering discipline. 8+ years of experience in the field of Software Development with Embedded systems, with at least 3 years in an architectural role. Proficiency in C, C++, and assembly language for embedded systems. Expertise in embedded operating systems (RTOS, Linux, FreeRTOS, Zephyr, etc.). Experience with microcontrollers (ARM Cortex, RISC-V, etc.), SoCs, and FPGAs. Strong knowledge of real-time systems, multi-threading, and low-level programming. Experience with communication protocols (SPI, I2C, UART, CAN, Ethernet, Bluetooth, etc.). Familiarity with software development tools (Git, GCC, Vivado, IAR, etc.). Experience with scripting languages Python, Bash, JavaScript a plus Technical Leadership & Collaboration: Provide mentorship and technical direction to software engineers. Work closely with product managers, hardware engineers, and other stakeholders to translate requirements into robust system designs. Participate in technical reviews, risk assessments, and design validation. Interpersonal skills to effectively work with team membersinternally as well as working effectively with suppliers and customers Ability to effectively present information in team meetings and design reviews, as needed.

Resume Suggestions

Highlight relevant experience and skills that match the job requirements to demonstrate your qualifications.

Quantify your achievements with specific metrics and results whenever possible to show impact.

Emphasize your proficiency in relevant technologies and tools mentioned in the job description.

Showcase your communication and collaboration skills through examples of successful projects and teamwork.

Explore More Opportunities