Senior Software Engineer
About the role
The Center for Translational Data Science (CTDS) at the University of Chicago is a research center dedicated to developing translational data science to address impactful problems in various fields. We aim to create accessible research data commons, computational resources, applications, tools, and services for the broader research community to conduct data-driven discoveries that enhance scientific knowledge and improve quality of life.
Learn more at gdc.cancer.gov, gen3.org, stats.gen3.org, and ctds.uchicago.edu.
Responsibilities
- Perform technical tasks and ensure timely delivery of such tasks, meeting the required level of quality.
- Participate in complex and challenging activities, including design and implementation.
- Provide support and maintenance for existing applications.
- Provide technical mentorship to interns and onboarding staff and technical leadership in technical initiatives.
- Actively participate in the hiring process and provide fair and productive interview feedback.
- Elaborate on technical solutions internally and externally when required.
- Investigate, analyze, and resolve day-to-day technical problems using standard procedures.
- Work with stakeholders to gather and analyze requirements for developmental programs.
Requirements
Relevant software development experience, full cycle preferred, including design, coding, testing, and support.
Programming skills using Python (preferred), Golang/Javascript (a plus), or other languages like C/C++, Java, or C# with advanced skills in at least one of these languages.
Knowledge of web applications, REST API, microservices, and containers.
Knowledge of Elasticsearch, PostgreSQL, Spark, Hadoop, and data analysis.
Knowledge of configuration management utilities (Chef, Salt, Ansible) and container-based deployment solutions (Docker, Kubernetes).
High performance/cloud computing experience (AWS, GCP, Openstack).
Unix/Linux programming, open source, and version control experience.
Experience with cloud platforms (AWS, GCP, Openstack), CI/CD, and Agile methodologies.
Qualifications
- 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.
Skills
- Ability to collaborate and interact effectively with team members, following guidelines and best practices and ensuring accountability for deliverables and outcomes.
- Ability to take multiple complex tasks and break them into smaller ones, estimating the effort needed to complete them, prioritizing them appropriately, and ensuring the completion of each task, meeting the required level of quality.
- Ability to prioritize and manage workload to meet project milestones and deadlines.
- Ability to adopt and support new structures or systems to meet objectives.
- Ability to take and provide constructive and helpful input and feedback on technical issues.
- In-depth knowledge in core technical areas, including in-depth knowledge of one or more modern programming languages, or having demonstrated the ability to achieve that level of proficiency in a short period of time.
Benefits
The University of Chicago offers a wide range of benefits programs and resources for eligible employees, including health, retirement, and paid time off. Information about the benefit offerings can be found in the Benefits Guidebook.