Software/Data Engineer position available at The University of Chicago
Location: Hyde Park Campus
Performs and oversees a variety of activities relating to software support and/or development. Oversees technical development projects and the implementation of applications and/or websites. Provides analysis, design, development, debugging, and modification of computer code for applications, beta general releases, and production support. Develops and builds web pages, applications and user interfaces using a variety of software applications, techniques, and tools. New development, break fixes, maintenance, operational support of code and application ecosystem currently in production. Includes overall application administration and integration management.
P2: Requires knowledge and experience in own discipline; still acquiring higher-level knowledge and skills. Builds knowledge of the organization, processes and customers. Solves a range of straightforward problems. Analyzes possible solutions using standard procedures. Receives a moderate level of guidance and direction.
The job performs a variety of activities relating to software support and/or development. Provides analysis, design, development, debugging, and modification of computer code for end user applications, beta general releases, web pages, and production support. Troubleshoots problems using existing procedures to find a possible solution.1) Investigates, analyzes and resolves day-to-day technical problems using standard procedures., 2) Works with stakeholders to gather and analyze requirements for developmental programs. Receives a moderate level of guidance to design applications to meet University and business requirements., 3) Performs code testing on components and works to ensure that appropriate implementation standards are met. Evaluates design alternatives for development cost and solutions using various methods., 4) Supports and maintains existing applications. Works with web developers and responds to requests from users., 5) Performs other related work as needed.
The following responsibilities represent Maintain and Develop Software and Data Infrastructure of the work performed
1) Plugins for community codes and scientific workflows
2) Database storage, query efficiency, and scalability
3) REST APIs and GUI front-ends
4) Communicate with users for support, feedback, and strategic development
5) Software testing units
6) Software deployment
1) Excellent problem-solving skills
2) Ability to take initiative, organize and complete projects with minimal supervision
3) Ability to work independently in an organized manner prioritizing the work of multiple projects
4) Ability to work collegially and as part of a team
5) Ability to manage a large volume of work often restricted by deadlines
6) Ability to use appropriate resources to resolve an issue
Minimum requirements include a college or university degree in related field.
Minimum requirements include knowledge and skills developed through 2-5 years of work experience in a related job discipline.
1) Master’s degree or PhD in Science or Engineering or related field
1) Research/scientific experience
2) Strong technical skills
3) Previous programming with Python3
4) Knowledge of C++ and/or FORTRAN a plus
5) Experience with containers (Docker, Singularity etc.)
6) Experience in managing large codes/projects in a team (version control systems, issue trackers, unit test, continuous integration)
7) Knowledge of software design (design patterns, agile development, etc.)
9) Scientific background (e.g. physical or engineering sciences)
1) Experience with molecular dynamics simulations and/or electronic structure calculations a plus
1) Cover Letter
3) Reference Contact Information (3)
NOTE: When applying, all required documents MUST be uploaded under the Resume/CV section of the application
To apply, click here.