Key job responsibilities
* Design and implement sophisticated embedded software architectures for robotic systems and innovative consumer devices
* Lead technical decisions for cross-platform software deployment strategies in complex, multi-processor environments
* Drive system-level architecture decisions and facilitate cross-functional technical alignment
* Collaborate with cross-functional teams and advise on new product concept architecture
* Establish and enforce scalable processes for software development, testing, and deployment
* Provide technical guidance and mentorship to team members
* Solve challenging technical problems spanning from low-level motor control to complex behavioral systemsA day in the life* Start with a daily standup meeting with your immediate team
* Debug a complex timing issue reported in the motion control subsystem
* Collaborate with hardware engineers to optimize a new sensor integration
* Lead an architecture review meeting for a new feature implementation
* Write and review code for real-time control algorithms
* Mentor team members on embedded systems best practicesThroughout your week, you can expect to:
* Participate in 2-3 design reviews for new features or architecture changes
* Spend 40-50% of your time writing and reviewing code
* Dedicate 20-30% to hands-on laboratory work with prototype devices
* Invest 15-20% in technical leadership activities including mentoring and architecture planning
* Engage in cross-functional meetings with product, hardware, and systems teamsYou'll work primarily from our office location, with access to dedicated robotics laboratory spaces, hardware development tools and equipment, collaborative workspaces, prototyping shops
- 7+ years of non-internship professional software development experience
- 7+ years of programming with at least one software programming language experience
- 5+ years of leading design or architecture (design patterns, reliability and scaling) of new and existing systems experience
- Experience as a mentor, tech lead or leading an engineering team
- Experience building complex software systems that have been successfully delivered to customers
- Deep expertise with and proven track record of deploying production-grade embedded systems with both RTOS and Linux for electromechanical products with hard real-time requirements and constraints in embedded systems
- 5+ years of full software development life cycle, including coding standards, code reviews, source control management, build processes, testing, and operations experience
- Master's degree in computer science or equivalent
- Experience with robotics control systems, related sensor integrations, communication protocols (CAN, SPI, etc), standards (eg. ISO 26262, IEC 61508) and crossfunctional prototyping
- Knowledge of ARM CPUs
- Knowledge of professional software engineering & best practices for full software development life cycle, including coding standards, software architectures, code reviews, source control management, continuous deployments, testing, and operational excellence
משרות נוספות שיכולות לעניין אותך