Job Description
BSD CTD - Engineering
About the Department
The Center for Translational Data Science (CTDS) at the University of Chicago is a research center whose mission is to develop the discipline of translational data science to impactful problems in biology, medicine, healthcare, and the environment. We envision a world in which researchers have ready access to the data needed and the tools required to make data driven discoveries that increase our scientific knowledge and improve the quality of life. We architect ecosystems of large-scale commons of research data, computing resources, applications, tools, and services for the broader research community to use data at scale to pursue scientific inquiry and accelerate discovery. Learn more at [Link available when viewing the job], [Link available when viewing the job], [Link available when viewing the job], and [Link available when viewing the job].
Job Summary
The job works independently to perform a variety of activities relating to software support and/or development. Analyzes, designs, develops, debugs, and modifies computer code for end user applications, beta general releases, and production support. Guides development and implementation of applications, web pages, and user-interfaces using a variety of software applications, techniques, and tools. Solves complex problems in administration, maintenance, integration, and troubleshooting of code and application ecosystem currently in production.
Software Engineers perform web application development activities of open-source software platforms, including analyzing business and technical requirements, designing/developing/testing software, reviewing and testing code, supporting and maintaining applications, and providing appropriate written documentation of project development and programming code. Staff Software Engineers are expected to be flexible for full-stack development and some may have a specialty in back-end or front-end technologies.
This at-will position is wholly or partially funded by contractual grant funding which is renewed under provisions set by the grantor of the contract. Employment will be contingent upon the continued receipt of these grant funds and satisfactory job performance.
Responsibilities
Responsible for a scope of significant size critical to the team’s success, including top priority technical tasks and timely delivery of such tasks, meeting and helping define the required level of quality.
Participation in complex and challenging activities, including design and implementation.
Provide technical leadership and effectively mentor interns and less experienced members.
Negotiate complex decisions, present options and persuasively advocate for optimal technical solutions, internally and externally.
Develop and integrate AI models and algorithms to enhance application functionalities and solve complex business problems.
Designs new systems, features, and tools. Solves complex problems and identifies opportunities for technical improvement and performance optimization. Reviews and tests code to ensure appropriate standards are met.
Utilizes technical knowledge of existing and emerging technologies, including public cloud offerings from Amazon Web Services, Microsoft Azure, and Google Cloud.
Acts as a technical consultant and resource for faculty research, teaching, and/or administrative projects.
Performs other related work as needed.
Minimum Qualifications
Education: Minimum requirements include a college or university degree in related field.
Work Experience: Minimum requirements include knowledge and skills developed through 5-7 years of work experience in a related job discipline.
Preferred Qualifications
Education:
Advanced degree in computer science, mathematics, statistics, engineering, or a relevant quantitative field strongly preferred.
Experience:
6+ years of relevant software development experience, full cycle preferred, including design, coding, testing, and support.
Advanced programming skills using Python (preferred), Golang/Javascript (a plus), or other languages like C/C++, Java, or C#.
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.
Experience with implementing machine learning & AI solutions (generative AI, fine-tuning models, custom model training and evaluation, LLMs, RAG).
Preferred Competencies
Ability to collaborate with team members and help define 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 persuade others to adopt new structures or systems in order to meet objectives.
Ability to take and provide constructive and helpful input and feedback on technical issues.
In-depth knowledge in most technical areas of major projects and the core product.
Considered a Subject Matter Expert of main technology, programming languages, and core solutions.
💡 Quick Summary
Seeking a career-building opportunity? The Staff Software Engineer position is now open for candidates interested in the Software Developer Jobs sector. This role in Chicago offers a professional environment and growth potential.
Requirement Snapshot: Candidates should possess basic communication skills, a proactive attitude, and the ability to work in a team. Experience in Software Developer Jobs is a plus.
