Software Developer Jobs | Stanford University Careers

by priyanka.patel tech editor

Stanford Engineering Seeks Software Developer to Advance Cutting-Edge Robotics Research

Stanford University’s School of Engineering is seeking a full-time Software Developer to join the Stanford Vision and Learning Lab (SVL) and contribute to groundbreaking robotics research. This is a fixed-term, one-year position, and unfortunately, visa sponsorship is not available. All candidates must possess existing U.S. work authorization. The role has been designated as critical by the School of Engineering Dean’s Office and is therefore exempt from the current hiring freeze.

For nearly a century, Stanford Engineering has been a driving force behind pivotal technological advancements, impacting fields from information technology and healthcare to energy and business. The school’s faculty, students, and staff are dedicated to tackling the world’s most pressing challenges and educating future leaders. As a senior official stated, “Our staff are critical to enabling Stanford Engineering to accomplish its mission.”

The SVL, located within the Computer Science Department at the Stanford Artificial Intelligence Laboratory (SAIL), focuses on the theoretical and practical applications of computational vision. Researchers are dedicated to uncovering the fundamental principles, algorithms, and implementations needed to solve complex visual perception and cognition problems. This includes work in computational geometry, automated image and video analysis, and visual reasoning, alongside investigations into the neural mechanisms underlying human visual processing.

Developing the Next Generation of Robot Learning Platforms

The primary focus of this position will be contributing to the development of BEHAVIOR, a core project of the SVL. BEHAVIOR is a benchmark platform designed to enable robots to learn everyday household tasks, such as washing dishes or cleaning floors. Built upon the OmniGibson simulation platform, BEHAVIOR combines simulation software with extensive data assets to support robot learning use cases, including reinforcement learning and imitation learning.

The goal, as outlined in a recent project update, is to create a high-performance, high-realism platform that will accelerate the development of advanced robots capable of assisting humans with daily activities. “To effectively enable robot learning workflows, BEHAVIOR needs to be high-performance and high-realism,” explained a member of the SVL team. You can learn more about BEHAVIOR at https://behavior.stanford.edu.

Responsibilities and Opportunities

The Software Developer will co-lead the project under the guidance of SVL faculty, gaining valuable experience in developing software for impactful research. A unique opportunity exists to contribute as an author on research papers published at leading AI conferences, including CVPR, NeurIPS, ICRA, and CoRL.

Key responsibilities include:

  • Conceptualizing, designing, implementing, and developing solutions for complex systems and programs independently.
  • Taking ownership of open-source projects as their lead maintainer.
  • Interacting with both internal and external clients to address bugs and gather information.
  • Documenting system builds and application configurations, and maintaining up-to-date documentation.
  • Leading projects of moderate complexity, including managing CI pipelines and conducting code reviews.
  • Developing and maintaining robotics simulation software, utilizing platforms such as pyBullet and NVIDIA Omniverse, with features including physics simulation, AR/VR, rendering, task and motion planning, and reinforcement learning.
  • Mentoring junior software developers.

Qualifications

Candidates must possess a Bachelor’s degree and five years of relevant experience, or a combination of education and experience. Essential skills and abilities include:

  • Expertise in designing, developing, testing, and deploying applications.
  • Proficiency in application design and data modeling.
  • Strong problem-solving skills for highly technical applications.
  • Excellent communication skills, both written and verbal, for interacting with technical and non-technical audiences.
  • Demonstrated ability to lead activities within structured team development projects.
  • Proficiency in selecting, adapting, and effectively utilizing various programming methods.
  • A solid understanding of the application domain.

Desired qualifications include:

  • Experience with software design and development, particularly in Python and C++.
  • Active practice of Git-based CI/CD workflows.
  • Experience with Docker and container frameworks.
  • Experience developing and maintaining open-source software.
  • Familiarity with linear algebra, robotics, and computer graphics.
  • Experience with machine learning algorithms and tools, such as PyTorch and TensorFlow.

Working Conditions and Benefits

This position may require occasional extended hours, including evenings and weekends. Physical requirements include prolonged periods of computer work, frequent sitting and fine motor skills, and occasional standing, walking, and handwriting.

Stanford University offers a competitive salary range of $138,402 to $163,985 per annum, commensurate with experience and qualifications. The university provides a comprehensive rewards package, detailed on the Cardinal at Work website: https://cardinalatwork.stanford.edu/benefits-rewards.

Why Join Stanford?

Stanford University has a long history of revolutionizing the world through innovation, from search engines and organ transplants to groundbreaking research. The university’s 17,000 staff members are driven to impact the future. As one analyst noted, “Stanford’s culture and unique perks empower employees with freedom to grow, a caring culture, and a focus on health and well-being.” Perks include career development programs, tuition reimbursement, access to lectures and events, comprehensive retirement plans, generous time off, health and fitness facilities, and commuter benefits.

How to Apply

Interested candidates are invited to apply online by clicking the “Apply for Job” button. Please submit a cover letter and résumé with your application, briefly outlining your qualifications and interest in the position. The job duties listed are representative and may vary based on departmental needs. Stanford University is an equal employment opportunity and affirmative action employer, committed to diversity and inclusion. Applicants requiring accommodations should contact Stanford University Human Resources.

Leave a Comment