Software Engineer for Athlete Performance Research
Location: Stanford, California
Internal Number: 92642
Do you want to be a key contributor to an award-winning, open source software project whose mission is to transform what we know about human performance? Are you interested in helping athletes of all levels, from elite to beginner, understand how to optimize performance and prevent injury? Are you a full-stack software developer eager to work with world-class researchers and engineers on simulating and analyzing human performance? Join the Digital Athlete team as a software developer. The project is part of the Wu Tsai Human Performance Alliance at Stanford (https://humanperformance.stanford.edu/).
At the foundation of the Digital Athlete project is our OpenSim software, a powerful and extensible software system to create and visualize simulations of human and animal movement (https://opensim.stanford.edu/). The free and open source software package is one of the premier biomechanics simulators, used by thousands of researchers around the world in fields ranging from robotics to biomedicine. For example, the software is used to help predict how to improve running performance, design exoskeletons to augment human performance and plan surgery for children with gait pathologies. The underlying OpenSim API is written in C++ and the GUI is written in Java. We also have interfaces in Python and Matlab. Your role will be to develop new tools to support the growing needs of the biomechanics and sports science communities by improving the performance and functionality of Digital Athlete software, including OpenSim.
Our VPDoR Diversity Journey:
We create a hub of innovation through the power of diversity of disciplines and people.
We provide equitable access and opportunity to all members of the community in order to do their best work, regardless of race, color, religion, sex, sexual orientation, gender identity, national origin, disability, protected veteran status, or any other characteristic protected by law.
We listen to and value all colleagues who bring diverse perspectives to the advancement and development of a respectful community.
We promote a culture of belonging, equity, and safety.
We embed these values in excellence of education, research, and operation.
The software engineer will work with the software development team on a wide variety of development projects:
Develop a mobile application for real-time movement analysis during activities like running, jumping, and cutting.
Create a compelling and straightforward user experience for researchers to visualize simulations of movement and create their own custom studies of movement (e.g., to predict joint loading during an athletic maneuver of interest).
Develop a robust user experience in Python and make other improvements to facilitate uptake of our biomechanics software by the machine learning community.
Conduct software performance profiling and benchmarking to find ways to reduce computation time and push the bounds of the types of simulations that are possible.
Additional roles and details:
Participate in software development projects at the API and GUI levels, designing and implementing new tools to support our worldwide collaborators.
Apply professional development practices to our software, both for new code and for correcting deficiencies in old code. This includes design, documentation, testing, portability, maintainability, adherence to standards, and egoless participation in team code reviews both as subject and reviewer.
Generate test cases/harnesses to target performance bottlenecks.
Serve as a leader-by-example to academic programmers and Stanford doctoral students to help them learn best professional coding practices.
Support external development teams who are using OpenSim by quickly answering questions online and in person at workshops and responding to feature requests and bug reports.
Work with the project team to understand the various user communities served by OpenSim and match coding decisions to the needs of our users.
Assess user needs and requirements.
Design and develop applications that may involve sophisticated data manipulation.
Maintain and update existing programs.
Troubleshoot and solve technical problems.
Create programs to meet reporting and analysis needs.
Design and implement user and operations training programs.
Document changes in software for end users.
Follow team software development methodology.
Serve as technical resource with respect to applications.
Education & Experience:
Bachelor's degree and three years of relevant experience or a combination of education and relevant experience.
2+ years of programming experience in Java or Python, or another Object Oriented Programming language, including prior experience with C++ programming
1+ years of experience as a full-stack web developer
A commitment to high-quality professionally-engineered software
Excellent skills in communication and teamwork
Experience in performance profiling and improvement in C++
Knowledge of multibody dynamics, computer vision, and/or biomechanics/anatomy/physiology
A resume is mandatory for consideration, and a cover letter describing your experience/interest is encouraged but not required.
Constantly perform desk-based computer tasks.
Frequently sit, grasp lightly/fine manipulation.
Occasionally stand/walk, writing by hand.
Rarely use a telephone, lift/carry/push/pull objects that weigh up to 10 pounds
May work extended hours, evenings or weekends.
May travel locally.
Occasional overnight travel.
Interpersonal Skills: Demonstrates the ability to work well with Stanford colleagues and clients and with external organizations.
Promote Culture of Safety: Demonstrates commitment to personal responsibility and value for safety; communicates safety concerns; uses and promotes safe behaviors based on training and lessons learned.
Subject to and expected to comply with all applicable University policies and procedures, including but not limited to the personnel policies and other policies found in the University's Administrative Guide, http://adminguide.stanford.edu.
What is the Wu Tsai Human Performance Alliance?
The Wu Tsai Human Performance Alliance at Stanford is a university-wide research initiative that leverages Stanford's exceptional research, outstanding athletics, and innovative spirit. We are creating a community that draws on diverse efforts across campus to uncover the fundamental principles of peak performance. Through our programs, we are developing the knowledge, the people, and the tools to make optimal health more accessible to all. We hope you will join us in our mission.
Why Stanford is for You
Imagine a world without search engines or social platforms. Consider lives saved through first-ever organ transplants and research to cure illnesses. Stanford University has revolutionized the way we live and enrich the world. Supporting this mission is our diverse and dedicated 17,000 staff. We seek talent driven to impact the future of our legacy. Ourculture and unique perks empower you with:
Freedom to grow. We offer career development programs, tuition reimbursement, or audit a course. Join a TedTalk, film screening, or listen to a renowned author or global leader speak.
A caring culture. We provide superb retirement plans, generous time-off, and family care resources.
A healthier you. Climb our rock wall, or choose from hundreds of health or fitness classes at our world-class exercise facilities. We also provide excellent health care benefits.
Discovery and fun. Stroll through historic sculptures, trails, and museums.
The job duties listed are typical examples of work performed by positions in this job classification and are not designed to contain or be interpreted as a comprehensive inventory of all duties, tasks, and responsibilities. Specific duties and responsibilities may vary depending on department or program needs without changing the general nature and scope of the job or level of responsibility. Employees may also perform other duties as assigned.
Consistent with its obligations under the law, the University will provide reasonable accommodation to any employee with a disability who requires accommodation to perform the essential functions of his or her job.
Stanford is an equal employment opportunity and affirmative action employer. All qualified applicants will receive consideration for employment without regard to race, color, religion, sex, sexual orientation, gender identity, national origin, disability, protected veteran status, or any other characteristic protected by law.
Why work at Stanford?Stanford University has changed the world, over and over again.We are one of Silicon Valley's largest employers - and also one of the most unique. Our mission is to educate future leaders and promote interdisciplinary, world-class research and teaching. This passion makes Stanford an intensely creative, rewarding, and challenging place to work. At the same time, our traditions of respect and collaboration sustain a humane, supportive environment in which to pursue your life and your career.At Stanford you'll work with bright, diverse, dedicated people. You'll find encouragement to learn and grow. You'll enjoy excellent benefits and an outstanding environment. How will it change you?