Lead Software Engineer - Emory National Biomedical Research Center
About the role
The Division of Information Technology (IT) within the Emory National Biomedical Research Center (ENBRC) at Emory University in Atlanta, GA, is currently seeking a Lead Software Engineer to join the ENBRC-IT team. ENBRC-IT is made up of a small team tasked with supporting the entire ENBRC for a wide range of IT activities.
Responsibilities
-
Leads the design, development, implementation, testing, and analysis of software applications to meet enterprise-wide business and user needs.
-
Consults with managers and directors to understand business needs and propose new and improved software applications.
-
Prepares reports to provide recommendations, conclusions, and other data.
- Hires, supervises, and evaluates staff.
-
Manages the end-to-end software development lifecycle, including sprint planning, resource allocation, and project timelines, using agile methodologies.
-
Conducts regular performance evaluations, provides ongoing mentorship, and supports the professional growth of individual software developers.
-
Defines and enforces team-wide coding standards and best practices through consistent code reviews to maintain software quality and consistency.
-
Acts as the primary technical contact for product managers and stakeholders to translate business requirements into detailed technical specifications.
-
Oversees the software release and deployment process, including the management of CI/CD pipelines to ensure smooth and timely delivery of new features.
-
Directs the recruitment and hiring process for new developers, from interviewing technical candidates to facilitating team integration.
- Mentors junior developers through code reviews, pair programming, and knowledge-sharing sessions.
-
Participates in on-call rotations, responds to production incidents, and conducts post-incident reviews.
-
Contributes to technical architecture discussions and documents design decisions.
-
Ensures best practices in code quality, testing, CI/CD pipelines, and cloud deployments (AWS).
-
Champions security, compliance, and data privacy standards across the platform.
Qualifications
- A bachelor's degree in computer science, management information systems, engineering, or a related field and five years of related experience in programming and software systems, including project management experience, or an equivalent combination of education, training, and experience.
- Experience in a lead or supervisory role.
- Knowledge of software development in a research institution context preferred.
- A bachelor’s or master’s degree in computer science is preferred.
- Coursework to include a strong foundation in programming languages, software architecture, and project management principles is essential.
- Extensive experience in the software development field is a primary requirement, with five or more years of hands-on software development experience.
- In addition to technical expertise, a proven track record of leadership and management experience, and at least two years of experience in a managerial or lead developer role.
- Two years of production experience with Node.js, Vue or React, Nuxt or Next.
- Demonstrated project work with process documentation, wire frames, and unit testing.
- Ability to read unfamiliar code and understand it at the architectural level before modifying it.
- Ability to translate vague feature requests into concrete technical plans.
- Technical development expertise in the following areas: JavaScript, Node.js, Vue or React, Nuxt or Next, Tailwind.js, GraphQL, Oracle, MySQL, PostgreSQL, Microsoft Office, etc.
- API (Application Programming Interface) experience, preferably REST and GraphQL APIs.
- .NET knowledge for supporting existing applications to move to Node.js.
- Expertise in using various reporting environments such as Oracle Analytics Server, eBIZ, and others.
- Profile Node.js services to identify CPU-bound operations, memory leaks, and event loop blocking.
- Good decision making, organization, analysis, and problem-solving skills with the ability to multitask.
- Acts as a proponent of modern software development practices.
- Basic understanding of AWS cloud services and cloud-based application development is preferred.
- Docker/containerization experience is a plus.
- Ability to react to changes in priorities, timelines, and scope promptly and efficiently, through analytical and problem-solving techniques.
Benefits
This is a hybrid remote position that requires onsite work at both the Atlanta and Lawrenceville locations.