Lead Software Engineer
Description
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. Versatility and resourcefulness in aptitude, skills, and attitude are required qualities of all IT staff positions. Our work consists of developing applications primarily for Animal Resource Management Systems and other ENBRC areas.
The ideal candidate should be a true leader, motivated, dependable, detail-oriented, and have a positive attitude and passion for research and application development. The Lead Software Engineer will be a team player who has a good understanding of full stack development experience and will collaborate with team members and center members. They will lead software developers and collaborate with various teams to deliver functional, efficient, and user-focused solutions.
KEY 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.
- Performs related responsibilities as required.
ADDITIONAL RESPONSIBILITIES:
- Lead technical design and architecture discussions, ensuring solutions are scalable, secure, and align with long-term technology goals.
- Manage the end-to-end software development lifecycle, including sprint planning, resource allocation, and project timelines, using agile methodologies.
- Conduct regular performance evaluations, provide ongoing mentorship, and support the professional growth of individual software developers.
- Define and enforce team-wide coding standards and best practices through consistent code reviews to maintain software quality and consistency.
- Act as the primary technical contact for product managers and stakeholders to translate business requirements into detailed technical specifications.
- Oversee the software release and deployment process, including the management of CI/CD pipelines to ensure smooth and timely delivery of new features.
- Direct the recruitment and hiring process for new developers, from interviewing technical candidates to facilitating team integration.
- Mentor junior developers through code reviews, pair programming, and knowledge-sharing sessions.
- Participate in on-call rotations, respond to production incidents, and conduct post-incident reviews.
- Contribute to technical architecture discussions and document design decisions.
- Ensure best practices in code quality, testing, CI/CD pipelines, and cloud deployments (AWS).
- Champion security, compliance, and data privacy standards across the platform.
MINIMUM 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.
PREFERRED/DESIRED QUALIFICATIONS:
- A bachelor's or master's degree in computer science is preferred.
- 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.
- 2+ 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. Must be able to think quickly and solve problems on the fly.
Find Your Best Opportunity
Tell them AcademicJobs.com sent you!







