Job Description
Lead the design and development of scalable, modular, and maintainable software
architecture for robotic systems, ensuring seamless integration across various
subsystems (e.g., perception, motion control, AI).
Collaborate with engineering teams to define and enforce software architecture
principles, best practices, and standards, ensuring consistency and high quality in all
software components.
Evaluate and select appropriate technologies, frameworks, and tools to ensure system
scalability, performance, and maintainability.
Design software systems that can handle complex real-time constraints, ensuring low
latency and high reliability in robotic operations.
Ensure that the architecture supports system expansion, enabling the easy integration
of new features and capabilities as the robotics platform evolves.
Define clear interfaces between software components and ensure smooth integration
with hardware, middleware, and external systems.
Lead the transition to more modular and flexible systems by implementing
microservices, component-based designs, or similar architectures.
Work closely with cross-functional teams (e.g., robotics, AI, perception, control) to
ensure that software architecture meets the needs of various stakeholders.
Mentor and provide technical leadership to engineering teams, helping them
understand and adhere to architectural principles and best practices.
Conduct architecture reviews, design reviews, and code reviews to ensure software
design quality and maintainability.
Continuously monitor and optimize system performance, ensuring that software scales
efficiently with increasing complexity and resource demands.
Stay current with trends and emerging technologies in robotics, software architecture,
and distributed systems, applying relevant innovations to improve system design.
Proven experience designing scalable, high-performance software architectures for
complex systems, ideally with robotic, autonomous, or real-time systems.
Strong expertise in software architecture principles, design patterns, and best practices
for modular and maintainable software.
Proficiency in programming languages such as C++, Python, or similar, with deep
understanding of low-level and high-level design principles.Experience with real-time operating systems (RTOS) and performance optimization
for embedded platforms.
Skills: design patterns,architecture and system design,system integration,microservices,embedded systems,c++,python,performance optimization,real-time operating systems (rtos),modular software design,robotic systems,ai integration,software architecture,robotics