Stanford University-posted about 1 month ago
Full-time • Entry Level
Hybrid • Stanford, CA
5,001-10,000 employees
Educational Services

Stanford University is seeking a Software Developer 1 to perform difficult or complex programming and software development work in the field of single-cell analysis. This work will involve the unification, development, and maintenance of software tools that we have developed and are widely used across the globe for processing and understanding single-cell data. The successful applicant is expected to contribute to all phases of the project, including conception, design, development, implementation, and maintenance. These tools are written in R, C++, and Python and require an in-depth understanding of software development and a reasonable understanding or at least genuine interest in single-cell biology and genomics. Duties include: Propose, conceptualize, design, implement, and develop solutions for difficult and complex applications independently. Working within R within their esoteric forms of object-oriented programming, as well as a highly templated C/C++ library involving heavy usage of CPU intrinsics. Oversee testing, debugging, change control, and documentation for major projects. Maintenance of software on GitHub repositories, including using software development best practices and responding to user queries through Issues and Discussions. Implement rigorous programming standards for documentation and long-term re-use/interpretability of code. Work with other lab members, as necessary, on all phases of software development. Engage in long-term strategic planning. Oversee the support, maintenance, operation, and upgrades of applications. Develop solutions for portability of software across users and systems. Troubleshoot and resolve complex technical problems. Review the physical design of existing systems for optimizing performance. - Other duties may also be assigned

  • Propose, conceptualize, design, implement, and develop solutions for difficult and complex applications independently.
  • Working within R within their esoteric forms of object-oriented programming, as well as a highly templated C/C++ library involving heavy usage of CPU intrinsics.
  • Oversee testing, debugging, change control, and documentation for major projects.
  • Maintenance of software on GitHub repositories, including using software development best practices and responding to user queries through Issues and Discussions.
  • Implement rigorous programming standards for documentation and long-term re-use/interpretability of code.
  • Work with other lab members, as necessary, on all phases of software development.
  • Engage in long-term strategic planning.
  • Oversee the support, maintenance, operation, and upgrades of applications.
  • Develop solutions for portability of software across users and systems.
  • Troubleshoot and resolve complex technical problems.
  • Review the physical design of existing systems for optimizing performance.
  • Current knowledge of latest software and design standards.
  • Ability to define and solve logical problems for technical applications.
  • Knowledge of and ability to select, adapt, and effectively use a variety of programming methods.
  • Ability to recognize and recommend needed changes in user and/or operations procedures.
  • Knowledge of software engineering principles.
  • Strong knowledge of at least one programming language (Ideally C++ along with R and Python)
  • Bachelor's degree and three years of relevant experience or a combination of education and relevant experience.
  • Experience working with large scale open-source codebases
  • Experience developing and working with linear algebra packages (LAPACK, BLAS, ATLAS, Eigen)
  • Experience working in high-performance computing
  • Experience, or at least surface level knowledge/interest of single cell biology and analysis.
  • Previous work experience within single-cell biology
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service