Senior Software Engineer, Backend Services

The University of Chicago
Chicago, United States of America
yesterday

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Working hours
Shift work
Languages
English
Experience level
Senior
Compensation
$ 170K

Job location

Remote
Chicago, United States of America

Tech stack

Amazon Web Services (AWS)
Amazon Web Services (AWS)
Architectural Patterns
Unit Testing
Azure
Bash
Big Data
Software as a Service
Computer Programming
Continuous Integration
Information Engineering
Data Mart
Data Security
Data Warehousing
Software Debugging
Linux
Elasticsearch
Github
General Parallel File Systems
Identity and Access Management
Python
PostgreSQL
OAuth
Platform as a Service (PAAS)
Performance Tuning
Public Key Infrastructure
Openid Connect
Security Assertion Markup Language (SAML)
Web Application Security
Service-Oriented Architecture
Shell Script
Software Engineering
SQLite
SQL Databases
System Programming
Systems Integration
Web Application Frameworks
Parquet
Google Cloud Platform
System Availability
Flask
Boto3
Backend
Cloudformation
FastAPI
Pytest
Data Lake
PySpark
Kafka
Data Management
Api Design
Text Analysis
REST
Data Pipelines
Docker

Job description

As a senior member of the Globus product team, you will design and deliver new capabilities in Globus data management platform, with focus on the data automation services. Delivered as a hosted service (SaaS) and platform (PaaS), Globus' secure data management platform is used by researchers worldwide. This role is a great opportunity to work on innovative solutions to data management and task automation at scale that directly influence and accelerate research in various domains., * 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. Leads 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

As a senior member of our team, the Senior Software Engineer, Backend Services will work in both collaborative and independent capacities on complex issues and projects, in some cases making progress under minimal guidance. We are looking for skilled Python engineers with experience building scalable systems to join the development team to expand the services delivered. In this role, you will architect new features, develop high-quality software and operate services with high-availability. If you enjoy collaborative, innovative, mission-driven environments, Globus could be a great fit for you!, 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., * 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.

Technical Skills or Knowledge:

  • 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.
  • Amazon Web Services, including IAM, boto3, S3, ECS, Cloud Formation, Step Functions, and Lambda.
  • Work with containers, such as Docker, and ECS.
  • Hands-on with 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.

Preferred Competencies

  • Excellent verbal and written communication skills.
  • Strong analytical and problem solving skills.
  • Excellent organizational skills and constant attention to detail.
  • Work both independently and as a team member.
  • Receptive to feedback; willing to learn and embrace continuous improvement.
  • Mastery of fundamental concepts, practices, and procedures of software development.
  • Confidentiality related to sensitive University matters such as strategic initiatives, trade secrets, quiet periods, and scientific discoveries yet to be put in the public domain.

Benefits & conditions

  • Occasional evening or weekend hours.
  • Participates in an on-call support rotation.
  • Remote work options are available for this position, with occasional attendance at in-person meetings., $150,000.00 - $170,000.00

The included pay rate or range represents the University's good faith estimate of the possible compensation offer for this role at the time of posting.

Benefits Eligible Yes

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.

About the company

Globus (www.globus.org) is a sustainable, non-profit unit within the University of Chicago delivering solutions to the research community worldwide. Globus develops and provides 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 develop and operate commercial-quality, cloud-based software application and platform services used by 10s of thousands of researchers to manage their large-and growing-data management challenges. We have offices located at the NBC Tower in the heart of downtown Chicago and remote employees who work-from-home. Globus, together with Globus Labs, a research group within the University of Chicago, and part of the Data Science and Learning Division at Argonne National Labs, develop and deploy cutting edge technologies to solve new challenges facing the scientific community and enable break-through scientific discoveries.

Apply for this position