Test Automation Intern

Are you applying to the internship?

Job Description

About Figure:

Figure is an AI Robotics company headquartered in San Jose, CA, focused on developing a general-purpose humanoid robot. Their robots are designed to address corporate labor shortages by taking on undesirable or unsafe jobs. The company emphasizes in-office collaboration, requiring a 5-day-a-week on-site presence.

Job Description: Test Automation Intern

Figure is seeking a Test Automation Intern for a summer internship (minimum 10 weeks, ideally 1-2 terms). This role involves working directly on the software and compute platform of Figure’s humanoid robot. The position requires a strong understanding of both hardware and software, and a hands-on approach to testing and development.

Responsibilities:

Implement test plans for the humanoid’s software and firmware running on the company’s compute platform. This includes designing and executing tests to ensure the robot’s functionality and reliability.
Develop Python scripts for various tasks, including data management, test automation, and robot calibration. This requires proficiency in Python programming and the ability to write efficient and well-documented code.
Contribute to the development of the CI/CD infrastructure. This involves working with existing systems and processes to improve the efficiency and reliability of the company’s software deployment pipeline.
Support hardware/software integration efforts in the lab. This is a hands-on role that requires comfort working with physical robots and lab equipment.

Requirements:

• Currently pursuing or recently completed a Bachelor’s or Master’s degree in Computer Science or a related field.
• Availability for a minimum 10-week internship (1-2 terms preferred).
Demonstrated experience with hardware/software projects outside of coursework. This highlights the need for practical experience beyond academic learning.
Fluency in C++ and Python. These are core programming languages used in the project.
Strong understanding of Linux systems. The robot’s operating system is likely Linux-based.
Knowledge of computer architecture, communication buses, and protocols (Ethernet, EtherCAT, Serial, CAN, USB). This demonstrates familiarity with the low-level aspects of robotics systems.
Comfort using lab instruments (e.g., oscilloscopes, logic analyzers) and debugging tools (e.g., Lauterbach). This indicates a hands-on, practical approach to problem-solving.

Bonus Qualifications:

• Experience with the Bazel build system.
• Experience using Docker containers.