Senior Systems Engineer/Architect, Distributed Systems for Global Automotive Company in San Jose, CA
Join a new project at a global automotive company in San Jose, California to work hands-on with an innovative team as the Senior Systems Engineer/Architect, Distributed Systems. They are looking for a candidate with expertise in Distributed Systems to support systems initiatives for a future harmonious transportation society. You will be architecting, designing, and implementing distributed algorithms and systems to support teaming and collaboration of hybrid autonomous systems. As a senior member, you will own and contribute to the evolution of distributed systems architecture. As a key technical member of the Systems Engineering team, you will apply modern software and systems engineering practices and tools to development of advanced mobility applications and systems.
Candidates with 2-4+ years of related work experience with a master’s or PhD is encouraged to apply.
Architect, design, develop and test distributed systems algorithms for various collaboration and teaming scenarios.
Lead design, development, and testing of mobility system deployments such as demonstrations in simulation environments and on actual mobility agents
Develop core distributed systems libraries to support collaboration and teaming of autonomous agents. Work on integration and testing of developed system components.
Own and grow distributed systems architecture to adapt to new requirements and challenges from customers and partners.
Adopt and use agile development tools and processes in your everyday work.
Coordinate distributed software systems engineering activities with team members.
Serve as a point of contact for distributed systems projects internally and externally.
Collaborate and engage with customers and partners.
Use development tools, systems and software engineering tools and processes.
4+ years of experience in practical applications of distributed systems (This can also be in a simulation environment).
Strong background in distributed systems theory and algorithms: architectures, processes and communication, coordination, consistency and replication, fault tolerance, etc.
Must have experience building distributed systems.
Experience in running distributed systems in simulated environments and real-world systems.
Strong programming skills in any of the following or related: C/C++, Go-lang, Rust, Erlang, Java, or Scala.
Hands-on experience with software engineering tools and processes in any of the following or related: JIRA, Git, Docker, Agile, Kanban, CI/CD, etc.
MS in Computer Science or related area and 2+ years of experience; or Ph. D. and 1+ year of experience
Experience with autonomous systems middleware (e.g. ROS) and Python for prototyping.
Previous Technical leadership in design and development experience.
Technical team leadership experience in software and systems engineering.
Experience in automotive, services, robotics, and automation fields are preferred.
Experience with simulation tools for engineering autonomous systems
Experience with distributed systems in cloud environment: microservices, client-server architecture, scale-out, replication, fault tolerance, etc.
Experience with teaming and coordination for autonomous agents and systems.
Experience working in highly flexible and agile research environment.
Duration: 2+ years
Location: San Jose, CA (Hybrid work schedule.)