At Lilly, we unite caring with discovery to make life better for people around the world. We are a global healthcare leader headquartered in Indianapolis, Indiana. Our employees around the world work to discover and bring life-changing medicines to those who need them, improve the understanding and management of disease, and give back to our communities through philanthropy and volunteerism. We give our best effort to our work, and we put people first. We’re looking for people who are determined to make life better for people around the world.
Technology at Lilly builds and maintains capabilities using pioneering technologies like most prominent tech companies. What differentiates Technology at Lilly is that we create new possibilities through tech to advance our purpose – creating medicines that make life better for people around the world, like data-driven drug discovery and connected clinical trials. We hire the best technology professionals from a variety of backgrounds, so they can bring an assortment of knowledge, skills, and diverse thinking to deliver solutions in every area of our business.
The Software Product Engineering (SPE) team is a specialised engineering group that delivers strategic solutions and differentiated capabilities. We take a forward-thinking approach, focusing on an enterprise platform and product mindset, ensuring that the solutions we build can be leveraged across Technology teams for broader impact and efficiency.
As a Senior Principal Software Engineer, you will be a recognised technical expert who owns the architecture, design, and delivery of complex, business-critical software systems. This is a deep-tech, hands-on leadership role where you will drive system design decisions across multiple technology domains, champion AI and agentic engineering practices, and solve highly complex problems that span teams and platforms. You will shape technical direction, apply DevSecOps principles, and establish best-practice architecture patterns that scale across the organisation. Your influence will extend across multiple teams and capabilities, raising the engineering bar and delivering measurable business impact.
Own end-to-end system design for complex, distributed systems – from high-level architecture through to component design and data modelling.
Design scalable, fault-tolerant microservices and event-driven architectures on AWS (ECS Fargate, Lambda, Step Functions, EventBridge, SQS/SNS, API Gateway).
Lead architectural reviews; author design documents including system context diagrams, sequence diagrams, and capacity plans.
Drive refactoring, re-platforming, and modernisation of legacy systems into cloud-native, containerised solutions.
Establish and enforce architecture standards and patterns (CQRS, event sourcing, saga, circuit breaker) across teams.
Write production-grade code across the stack: backend (Node.js/TypeScript, Go, Python), frontend (React/Next.js), and infrastructure-as-code (CloudFormation/Terraform).
Build robust APIs (REST, GraphQL), real-time layers (WebSockets, SSE), and high-throughput data pipelines.
Implement DevSecOps practices: CI/CD (GitHub Actions, CodeBuild), automated security scanning, container orchestration, and observability (CloudWatch, Datadog, OpenTelemetry).
Architect agentic systems that reason, plan, and execute multi-step workflows using LLM orchestration frameworks (LangChain, LangGraph, CrewAI, or custom architectures).
Build RAG pipelines, vector search systems, and knowledge graph integrations for enterprise use cases.
Implement tool-use patterns, function calling, and agent-to-agent communication for composable, reliable AI agents.
Evaluate and deploy foundation models; establish guardrails, prompt management, and evaluation frameworks for production AI.
Champion responsible AI – safety, explainability, bias mitigation, and healthcare regulatory compliance.
Act as the go-to technical authority across multiple teams for system design and complex problem solving.
Mentor engineers; drive and enforce process improvements ensuring the team understands benefits and tradeoffs.
Promote innovative ideas across multiple teams and capabilities; author ADRs, technical standards, and engineering playbooks.
Break down complex problems into clear, implementable solutions with measurable business impact.
Deliver well-architected, performant, secure, and operable systems at scale.
Build trust as a recognised expert in at least one major domain (distributed systems, cloud architecture, AI/ML, frontend platforms) while maintaining breadth across the stack.
Drive adoption of AI-assisted development (GitHub Copilot, Claude, agentic coding tools) to accelerate team velocity.
Navigate cross-team dependencies and align stakeholders on technical direction.
Expert-level proficiency in at least one backend language (Node.js/TypeScript, Go, Python, Rust, or Java) with strong knowledge of a second.
Deep understanding of system design: distributed systems, CAP theorem, consistency models, sharding, caching, and load balancing.
Extensive AWS experience: compute (ECS, Lambda), storage (S3, RDS, DynamoDB, ElastiCache), networking (VPC, API Gateway, CloudFront), and IaC.
Strong frontend skills with React/Next.js, TypeScript, state management, and performance optimisation.
Proficiency in relational (PostgreSQL), NoSQL (DynamoDB, MongoDB), and vector databases (Pinecone, pgvector).
Hands-on experience with AI/ML applications – LLM integration, RAG systems, agentic workflows, and AI orchestration frameworks.
Proven ability in refactoring, re-platforming, DevSecOps, CI/CD, container orchestration (Docker, Kubernetes), and observability.
Bachelor’s or Master’s in Computer Science, Computer Engineering, or a related field.
10+ years of hands-on software development with significant depth in system design and architecture.
Demonstrated ability to solve highly complex problems across at least one major technology domain.
Track record of designing and delivering large-scale, production-grade distributed systems.
Strong communication skills; ability to collaborate across backend, frontend, DevOps, platform, and product teams.
AWS Solutions Architect or Kubernetes certifications.
Experience building agentic AI systems or autonomous workflow engines in production.
Open-source contributions, technical writing, or conference presentations.
Experience in regulated industries (Life Sciences, Healthcare) with compliance knowledge (GxP, HIPAA).
Lilly is dedicated to helping individuals with disabilities to actively engage in the workforce, ensuring equal opportunities when vying for positions. If you require accommodation to submit a resume for a position at Lilly, please complete the accommodation request form (https://careers.lilly.com/us/en/workplace-accommodation) for further assistance. Please note this is for individuals to request an accommodation as part of the application process and any other correspondence will not receive a response.
Lilly does not discriminate on the basis of age, race, color, religion, gender, sexual orientation, gender identity, gender expression, national origin, protected veteran status, disability or any other legally protected status.
#WeAreLilly