Senior Software Engineer, Backend Services
University of Chicago · Chicago, IL · 2 mo ago
HybridEngineering$150k–$170k/yrOther
About the role
Globus (www.globus.org) is a sustainable, non-profit unit within the University of Chicago delivering solutions to the research community worldwide. We develop and provide critical services that support scientific research for governmental, academic, and commercial organizations in a wide range of disciplines including life sciences, physics, and astronomy. We have offices located at the NBC Tower in the heart of downtown Chicago and remote employees who work-from-home.
Responsibilities
- Architecture and Design - leads the definition and documentation of requirements, architecture and design of secure, scalable, asynchronous, data access services, based on deep knowledge of principles of API design, asynchronous processes, data engineering, service deployment, and delivery of services with high availability.
- Software Development - develops, tests, documents, deploys and maintains high-quality software on a cloud-based platform, including REST interfaces, command-line interfaces, socket-based services, and data processing pipelines; works with other service and client development teams to integrate and design cross-service features.
- Led code and design reviews, and mentors other junior engineers to ensure high quality service delivery.
- Support and Documentation - works in close collaboration with the Globus front line support and professional services teams, and directly with end users, to provide technical support services; sometimes serving as the point of escalation for complex issues; responsible for ensuring standard operating procedures and protocols are maintained and documented.
- Team Coordination and Professional Development - maintains a working knowledge of relevant software technologies being developed and/or used in scientific and commercial communities; contributes to team coordination and development activities, including project planning, project reporting, and recruitment.
- 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.
- Performs other related work as needed.
Requirements
Minimum requirements include a college or university degree in related field. Minimum requirements include knowledge and skills developed through 5-7 years of work experience in a related job discipline.
Qualifications
- Professional experience in software engineering and delivering large scale systems.
- 5+ years of relevant programming experience developing, implementing, debugging, and maintaining applications with Python.
- Managing pipelines that process and transform large-scale datasets (terabyte-scale, billion+ records), including, building and maintaining data warehouses and data marts.
Skills
- Developing, implementing, debugging, and maintaining applications with Python.
- Generalized architecture patterns and service oriented architecture.
- Python web frameworks such as FastAPI or Flask.
- Unit testing and continuous integration tools, such as pytest, GitHub Actions and shell scripting, especially bash.
- SQL databases, including PostgreSQL, SQLite.
- Implementation of RESTful API services.
- Development, deployment and operation of SaaS and PaaS systems.
- AWS, including IAM, boto3, S3, ECS, Cloud Formation, Step Functions, and Lambda.
- Containers, such as Docker, and ECS.
- Modern data stack tooling, including PySpark, Iceberg/Delta Lake, Parquet, S3 Tables, Firehose, Kafka/Kinesis, or similar programs.
- Elasticsearch/OpenSearch, including cluster management, text analysis pipelines, relevance tuning, and ranking strategies.
- Integrating with large-scale, high-performance filesystems, such as Lustre, GPFS, and VAST.
- Linux system programming, process execution and management.
- Web security technologies, such as OAuth2, SAML, OpenID Connect and PKI.