About Engineered Arts
Since 2004, Engineered Arts has been at the forefront of robotics, creating lifelike social humanoids that have captivated audiences worldwide. Our vision is to revolutionize the human experience through embodied AI, loved and trusted in every home.
Develop and maintain full-stack web applications
Write clean, efficient, and scalable code.
Build and enhance APIs for seamless front-end and back-end communication.
Ensure the reliability and performance of the back-end systems.
Maintain front-end frameworks (React/Typescript) to deliver an exceptional user experience.
Develop and maintain on-robot software systems
Build on-robot scripts and services to interact with both robot hardware and cloud services.
Maintain, enhance and debug Linux based robot software stack.
Collaborate with cross-functional teams
Work with product managers to translate business requirements into technical specifications.
Collaborate closely with other developers, embedded engineers, DevOps team and other internal stakeholders to deliver high quality, timely solutions.
Coach and support more junior developers.
Debug, maintain and extend the codebase
Debug and troubleshoot front-end, back-end and on-robot issues.
Implement feature requests and enhancements as per project requirements.
Ensure code maintainability, scalability, and testability.
Stay adaptable to new technology trends and quickly pivot when necessary.
Typical Position Interactions
Head of Development
Aligning with project goals and team priorities.
Discussing architecture and future improvements to the tech stack.
Product Manager
Collaborating on defining features and application workflows.
Providing technical insight on project feasibility.
UI/UX Designers
Incorporating design guidelines to enhance front-end development.
Providing feedback on user experience and interface performance.
DevOps and QA Teams
Ensuring deployment processes are streamlined and reliable.
Debugging, testing, and monitoring solutions in live environments.
Challenges
Ensuring our cloud platform provides a smooth user experience while handling complex business logic.
Ensuring robots function reliably and repeatably in their interaction with our cloud services and their local execution of associated behaviours.
Working within an existing large and complex codebase.
Working in a fast-paced environment with evolving project scopes.
Achieving functional goals with the constraints of complex real-life hardware.
Opportunities
Working at the forefront of the rapidly growing field of humanoid robotics.
Working in a creative environment with highly skilled and committed colleagues.
Work across a broad technical field with ample variety in tasks and opportunity to deepen your knowledge and experience in many areas.
Working on a proven, commercially successful product consistently shipping units.
Working on a modern Linux-based stack prioritizing performance and developer ergonomics over industry conventions.
See the fruit of your labour Interact with customers using our robots and see the wonder and joy of people reacting to robot behaviors you created.
Gain guidance from experienced developers, designers, long-term customers and a mature yet fast-moving codebase.
Essential
Qualifications, Knowledge, Key Skills and Experience
Experience with TypeScript and React for building dynamic, responsive front-end applications.
Back-end development experience in Python, particularly with frameworks like Django or Flask, or equivalent experience in other back-end languages like with Express.
Familiarity with Linux system development
Familiarity with designing and consuming RESTful APIs.
Experience with Git and collaborative version control practices.
Experience in writing unit-tested, maintainable, and scalable code.
Understanding of CI/CD pipelines.
Knowledge of database systems such as PostgreSQL and MySQL; interaction via GraphQL.
Desirable
Experience building products with Large Language Models (LLMs) and integrating them into production environments.
Experience developing in C++ and/or Rust
Experience in CI/CD pipelines to automate testing, deployment, and release management.
Knowledge of cloud platforms (AWS, Azure, etc.).
Experience with Docker, Kubernetes and containerized application deployment.
Experience working on real time systems such as video games or IoT installations.
Exposure to embedded systems or hardware integration, with a focus on optimizing interactions between software and physical components.