We're looking for a Software Engineer focused on designing and building scalable technical solutions. This senior role requires 8+ years of relevant experience.
About the role
Design, develop, test, and deploy robust, scalable, and maintainable software applications and services using modern programming languages, frameworks, and architectural patterns (e.g., microservices, event-driven, RESTful APIs, GraphQL).
Collaborate with product owners, business analysts, data scientists, and cross-functional engineering teams to understand requirements, define technical specifications, and ensure alignment with business goals and regulatory standards.
Serve as a recognized subject matter expert across multiple technologies and relevant business domains, independently resolving ambiguous or complex business problems.
Break down moderately complex problems and drive initiatives/solutions that increase business impact.
Participate actively in code reviews, providing constructive feedback to ensure code quality, security, performance, and long-term maintainability.
Troubleshoot, debug, and resolve software defects and performance bottlenecks using profiling tools, log analysis, and root cause analysis methodologies.
Design and implement RESTful or GraphQL APIs and integrate with internal and third-party services, including EHR systems, data platforms, and cloud-native services.
Develop and maintain comprehensive automated test suites — unit, integration, end-to-end, and performance testing — using frameworks such as pytest, JUnit, Selenium, Cypress, or k6.
Contribute to system architecture discussions and provide technical guidance on design patterns, data modeling, API contracts, and technology selection.
Monitor application health, performance, and reliability in production using observability tools (e.g., Datadog, Splunk, New Relic, CloudWatch) and respond to incidents proactively.
Mentor and coach engineers by sharing knowledge in specialized technologies and business domains to increase team technical growth.
Challenge existing approaches and recommend improvements to team and business processes that drive innovation.
Promote ideas and influence technical decisions across multiple teams, including business and non-engineering collaborators.
Stay ahead of emerging technologies, industry trends, and open-source innovations, evaluating their applicability to Lilly's technology ecosystem.
Work effectively in an agile development environment, participating in daily stand-ups, sprint planning, backlog refinement, and retrospectives.
Bachelor's degree in Computer Science, Software Engineering, Information Systems, or a related technical field.
8+ years of professional software development experience.
Proficiency in at least one modern programming language: Python, Java, C#, Go, or JavaScript/TypeScript.
Experience with relational databases (e.g., SQL Server, PostgreSQL, MySQL) and writing optimized SQL queries.