Lead Embedded Software Engineer

CirrusLabs

Grand Rapids, MI

JOB DETAILS
LOCATION
Grand Rapids, MI
POSTED
30+ days ago
POSITION OVERVIEW
Lead Embedded Software Engineer is responsible for leading a team of embedded software engineers and writing and developing embedded software.

Location : This position requires on-site work at facilities. This role is not eligible for remote work.

WHAT YOU'LL DO
  • Lead the execution of full development lifecycle including Requirements Analysis, Software Architecture, Software Design, Algorithm Design, Unit Test Development, Integration Test Development, Embedded Software Development, Software Verification and Validation.
  • Design and implement new features for our embedded platforms, including, but not limited to, bringing up new cameras, SoC's, sensors, chipsets and other driver development.
  • Lead code reviews, estimation and planning meetings.
  • Drive process improvement and software compliance activities.
  • Provide technical leadership and influence in the execution of all primary responsibilities.
  • Mentor and foster professional growth of engineers and encourage career progression.
  • Stay current with industry trends and drive continuous improvement of process.
  • Collaborate with cross-functional teams including Hardware, Mechanical, Product, Software Project Engineering and System Engineering to support execution of products into software, assure software/hardware integration and quality.
  • Participate in Product Launch Teams as required.
  • Other duties as assigned.
HOW YOU'LL DO IT
  • Technical expertise - Demonstrating depth of knowledge and skill in a technical area.
  • Managing complexity - Making sense of complex, high quantity and sometimes contradictory information to effectively solve problems.
  • Mentoring and coaching - Providing timely guidance and feedback (both positive and constructive) to help others recognize strengths and development opportunities. Inviting tough conversations.
  • Optimizing work processes - Knowing the most effective and efficient processes to get things done, with a focus on continuous improvement.
  • Situational adaptability - Demonstrating the flexibility to adapt to changing environments. Adjusting approach to adapt to shifting demands.
  • Fostering teamwork - Building effective partnerships and working collaboratively with others to meet shared objectives.
  • Maintaining a high level of honesty, integrity, and confidentiality with respect to company matters.
  • Complying with all Company policies and procedures, safety regulations, company safety policies and safely perform all duties , including but not limited to, promoting a safe workplace.
REQUIREMENTS
  • Bachelor's degree in Electrical Engineering, Computer Engineering, Computer Science, or related discipline.
  • 6+ years of technical experience in all phases of software development lifecycle.
  • 2+ years of experience as a mentor or a leader.
  • High proficiency in C, C++ languages, assembly languages, and real time operating systems.
  • Detailed, ongoing, current knowledge of electronics components and systems.
  • Broad technical skills and exemplary technical dependability in all product phases.
  • In-depth knowledge of embedded systems.
  • Requires a person who is highly motivated and demonstrates good communication and people skills.
  • Must be able to balance multiple responsibilities and have strong multi-tasking skills.
  • Proficiency in Microsoft Office Suite.
PREFERRED EXPERIENCE
  • Strong Linux Experience.
  • Experience working on video, audio, signal processing and compression.
  • Experience working on Camera development and Image Signal Processing.
  • Experience working on Wi-Fi and BLE.
  • Familiarity with tools like Git, Bitbucket, Jenkins, JIRA, Azure DevOps etc.
  • Familiarity with Agile processes.
  • Familiarity with static analysis tools, code coverage metrics and unit test generation.

About the Company

C

CirrusLabs