Principal Software Engineer

Updated: about 1 month ago
Location: Chicago, ILLINOIS
Job Type: FullTime

Department
 

Provost Software Engineering 3


About the Department
 

Globus (www.globus.org) is a sustainable, non-profit business 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, operate, and sell 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 401 North Michigan Avenue in the heart of downtown Chicago and remote employees who work from home.


Job Summary
 

As a technical leader of the product team, you will be responsible for architecture, design and delivery of services in the Globus data management platform. The Globus data management platform uses a hybrid architecture to provide high performance, secure managed transfer and sharing, for researchers worldwide. In this role you will be responsible for delivering the hosted service that provides the reliable file transfer and sharing solution.
In this role, you will collaborate with other engineers, to design and build out capabilities for high performance data transfer, and secure collaborative data sharing, across thousands of systems connected to the Globus platform. Bringing your expertise in building scalable hosted systems, and knowledge of building client applications for data movement, you will lead the efforts to maintain and add to the capabilities to the data management services, while mentoring other staff members in the team.
You will engage with the product management team and other stakeholders to help shape new product ideas, and provide technical input to define and architect capabilities in the Globus platform. You will translate such high level definitions into implementation designs, and evaluate multiple options and architect optimal solutions. With a bias for robust and reliable solutions, and a customer-centric approach, you will ensure high quality services and applications are delivered.
If you enjoy collaborative, innovative, mission-driven environments, Globus could be a great fit for you!

Responsibilities

  • Provide technical leadership on product initiatives, deliver end-to-end architecture and high-level systems designs. Solves complex problems and identifies opportunities for technical improvement and performance optimization. 

  • Collaborates with product management to  identify and document the technical requirements for features and capabilities, and plans team coordination and development activities, including feature planning and resourcing.

  • Develops, tests, documents, deploys and maintains high-quality software on a cloud-based platform, including REST interfaces, command-line interfaces, and socket-based services; works with other service and client development teams to integrate and design cross-service features. 

  • Leads code and design reviews for significant product capabilities to ensure high quality service delivery.

  • Lead and coordinate the efforts across the team on refining the high-level systems design into detailed component designs.

  • Works with other service and client development teams to integrate and design cross-service features. 

  • Provide training, technical oversight, and mentoring of junior software developers and students.

  • Works in close collaboration with the Globus front line support and professional services teams, and directly with end users, as the subject matter expert to debug and support complex support issues. 

  • Documents standard operating procedures and protocols.

  • Maintains a working knowledge of relevant software technologies being developed and/or used in scientific and commercial communities.

  • Support recruitment activity by designing technical challenge, and conducting interviews.

  • Utilizes in-depth technical knowledge of existing and emerging technologies, including public cloud offerings from Amazon Web Services, Microsoft Azure, and Google Cloud.

  • Leads or coordinates teams or projects for activities relating to software support and/or development.

  • 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 7+ years of work experience in a related job discipline.

---
Certifications:

---

Preferred Qualifications

Experience:

  • 15+ years of professional experience in software engineering and delivering large scale systems.

  • 10+ years of relevant programming experience developing, implementing, debugging, and maintaining applications with Python.

  • Technical leadership experience within an engineering team.

Technical Skills or Knowledge:

  • Proven expertise in with building large scale distributed applications, and supporting production deployment with large customer base.

  • Demonstrated experience with architecting distributed systems, and complex services, that meet high availability and reliability requirements.

  • Programming experience developing, implementing, debugging, and maintaining applications in Python, for large scale applications.

  • Demonstrated expertise with Linux system programming (process execution, inter-process communication, threading, and debugging).

  • Expertise in SQL databases (e.g. PostgreSQL, MySQL, SQLite).

  • Proficient  with Amazon Web Services (e.g. IAM, boto3, S3, EC2, Cloud Formation), and secure deployment of services on AWS.

  • Proven understanding of web security technologies (e.g. OAuth2, OpenID Connect and PKI), and experience designing and implementing secure services.

  • Strong understanding of generalized architecture patterns and service oriented architecture.

  • Experience with scripting languages.

  • Experience with unit testing and continuous integration tools (e.g. Jenkins).

  • Experience with full design life cycle.

  • Experience creating design documents, development specifications,  and other development related documentation.

Preferred Competencies

  • Attention to detail.

  • Problem solving skills.

  • Ability to work in a collaborative team environment.

  • Ability to prioritize and manage workload to meet critical project milestones and deadlines

  • 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.

Working Conditions

  • This job requires occasional evening or weekend hours.

  • Option available for hybrid work with occasional required attendance at in-person meetings.

Application Documents

  • Resume (required)



When applying, the document(s) MUST  be uploaded via the My Experience page, in the section titled Application Documents of the application.



Job Family
 

Information Technology


Role Impact
 

Individual Contributor


FLSA Status
 

Exempt


Pay Frequency
 

Monthly


Scheduled Weekly Hours
 

37.5


Benefits Eligible
 

Yes


Drug Test Required
 

No


Health Screen Required
 

No


Motor Vehicle Record Inquiry Required
 

No


Posting Statement
 

The University of Chicago is an Affirmative Action/Equal Opportunity/Disabled/Veterans and does not discriminate on the basis of race, color, religion, sex, sexual orientation, gender, gender identity, national or ethnic origin, age, status as an individual with a disability, military or veteran status, genetic information, or other protected classes under the law. For additional information please see the University's Notice of Nondiscrimination.

 

Staff Job seekers in need of a reasonable accommodation to complete the application process should call 773-702-5800 or submit a request via Applicant Inquiry Form.

 

We seek a diverse pool of applicants who wish to join an academic community that places the highest value on rigorous inquiry and encourages a diversity of perspectives, experiences, groups of individuals, and ideas to inform and stimulate intellectual challenge, engagement, and exchange.

 

All offers of employment are contingent upon a background check that includes a review of conviction history.  A conviction does not automatically preclude University employment.  Rather, the University considers conviction information on a case-by-case basis and assesses the nature of the offense, the circumstances surrounding it, the proximity in time of the conviction, and its relevance to the position.

 

The University of Chicago's Annual Security & Fire Safety Report (Report) provides information about University offices and programs that provide safety support, crime and fire statistics, emergency response and communications plans, and other policies and information. The Report can be accessed online at: http://securityreport.uchicago.edu . Paper copies of the Report are available, upon request, from the University of Chicago Police Department, 850 E. 61st Street, Chicago, IL 60637.



Similar Positions