Lead Software Engineer

The University of Chicago
Chicago, United States of America
1 month ago

Role details

Contract type
Permanent contract
Employment type
Part-time (≤ 32 hours)
Working hours
Regular working hours
Languages
English
Experience level
Senior
Compensation
$ 170K

Job location

Remote
Chicago, United States of America

Tech stack

Testing (Software)
Java
JavaScript
Agile Methodologies
Amazon Web Services (AWS)
Software Applications
Azure
Health Informatics
C Sharp (Programming Language)
C++
Cloud Computing
Configuration Management
Computer Simulation
Computer Programming
Databases
Continuous Integration
Software Debugging
Software Design Patterns
Web Development
Elasticsearch
Middleware
Hadoop
Python
PostgreSQL
MySQL
NoSQL
Open Source Technology
OpenStack
Performance Tuning
Ansible
Webui
Software Engineering
Web Applications
Web Pages
Web Services
Google Cloud Platform
Spark
GIT
Kubernetes
Information Technology
Data Analytics
Free and Open-Source Software
REST
Software Version Control
Docker
Jenkins
Go
Programming Languages
Microservices

Job description

The job leads and provides expertise to the development of programs for 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. Manages 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.

The Lead Software Engineer is responsible for a scope of significant size or functional area critical to the team's success, using in-depth knowledge in all technical areas of major projects and core product and responsible for design and implementation of top priority technical tasks, timely and quality delivery, leading and mentoring other engineers, and helping the organization drive toward its strategic goals, negotiating complex solutions along the way.

All 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. All 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 design and implementation of top priority technical tasks and timely delivery of such tasks, meeting and defining the required level of quality.
  • Responsible for managing activities of a complex and challenging nature, including design and implementation of large systems and/or core components, with decisions having a large impact on the team or cross multiple teams.
  • Negotiate complex decisions, present options and persuasively advocate for optimal technical solutions, internally and externally.
  • Responsible for responding, triaging, and resolving production system issues in a timely fashion, across multiple projects when required.
  • Help translate high level requirements into well-architected and well-tested design and implementation.
  • Lead team(s) of software engineers and provide technical guidance and leadership for the team to follow best practices and deliver quality software, middleware, and processes timely.
  • Collaborate with, support, and help the team members to grow and realize their full potential, and make the right decisions collectively.
  • Proactively and effectively addresses management challenges.
  • Actively participate in and define the hiring process and provide fair and productive interview feedback.
  • Leads in the development of 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 in-depth 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.
  • Leads or coordinates teams or projects for activities relating to software support and/or development.
  • Performs other related work as needed.

Requirements

Minimum Qualifications

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., * Advanced degree in computer science, mathematics, statistics, engineering, or a relevant quantitative field strongly preferred., * 7+ years of relevant software development experience, full cycle strongly preferred, including design, coding, testing, and support. With advanced experience building full stack web applications and a proficiency in two or more modern programming languages, preferably Python and JavaScript.

  • Full stack design and development with proficiency in modern web UI technology stacks.
  • Advanced programming skills using Python, Golang/Javascript, and other languages like C/C++, Java, or C#.
  • Knowledge and/or experience with: web applications, REST API, microservices, and containers; Unix/Linux programming, open source, and version control experience; configuration management utilities (Chef, Salt, Ansible) and container-based deployment solutions (Docker, Kubernetes); modern database and data analytics technologies (Postgres, MySQL, NoSQL, Elasticsearch, Spark, Hadoop, etc.); and High performance/cloud computing experience (AWS, GCP, Openstack).
  • Experience with CI/CD and version control tools (e.g. Jenkins, Travis, git).
  • Experience with or contribution to open-source projects.
  • Experience with Agile methodologies.
  • Domain experience in biomedical informatics

Preferred Competencies

  • Ability and willingness to acquire new programming languages, statistical and computational methods, and background in research area.
  • In-depth knowledge in all technical areas of all major projects and the core product's scope, or having demonstrated the ability to achieve that level of proficiency in a short period of time.
  • Ability to manage a large size team and define and drive higher level organizational goals with guidance from senior management and lead the team to plan, execute and deliver to meet critical project milestones and deadlines.
  • Ability to effectively communicate organizational goals to the team and mentor the members by providing constructive and helpful input and feedback.
  • Ability to prioritize and manage team workload to meet critical project milestones and deadlines.
  • Ability to persuade/manage others to adopt new structures or systems in order to meet objectives.
  • Advanced understanding of computer science principles.
  • Project management skills, including an ability to manage multiple teams and projects simultaneously, and own time well, and achieve objectives.
  • Ability to take or create a plan and break it into incremental tasks and ensure the completion of each task, meeting the required level of quality.
  • In-depth knowledge with microservice architecture, design patterns, cloud platforms (AWS/GCP), RESTful API, and web services.
  • Ability to work in a collaborative team and provide technical management to ensure accountability for deliverables and outcomes.
  • Understands and can maintain confidentiality related to sensitive matters such as strategic initiatives, trade secrets, quiet periods, and scientific discoveries yet to be put in the public domain.

Working Conditions

  • Office environment.

Apply for this position