Position Overview
Join the Follett Team, where employees are valued, respected, and offered career paths throughout its many campus locations. Follett serves over half of the students in the United States and works with 80,000 schools as a leading provider of education technology, services and print and digital content. We're higher education's largest campus retailer and a hub for school spirit and community as we operate nearly 1,200 local campus stores and over 1,600 virtual stores across the continent. We take pride in the fact that for more than 140 years, we have been helping to improve people's lives by supporting a lifetime of learning and education.
The Team Lead, Python/Django Engineering(Lead Software Engineer) is the deepest technical authority on an engineering team building and operating Python/Django services backed by PostgreSQL, with significant exposure to enterprise system integrations. The team's primary surface area is backend, with a lighter-weight React front-end layer supporting it - this is a backend-first, not full-stack-parity, role. This is an individual-contributor technical leadership role: the person is expected to be the strongest engineer on the team, setting architecture direction, writing and reviewing production code at the highest bar, and serving as the technical escalation point for the hardest problems. The team already relies heavily on AI-assisted development tooling; this person is expected to own that practice and take it further, not introduce it from scratch. Sprint mechanics, hiring, and formal performance management are owned by the Engineering Manager; this role's leadership is exercised through technical judgment, code, and mentorship rather than administrative process. The Team Lead partners closely with the Director of Software Engineering and cross-functional stakeholders to translate business priorities into sound technical designs and a reliable, well-tested delivery pipeline.
Responsibilities
- Serve as the top technical authority for the team: own architecture decisions, system design, and technical roadmap for Python/Django services, and set the engineering standard through hands-on code.
- Guide and review the team's lighter-weight React front-end work, ensuring it stays consistent with backend patterns and quality bar - this is a supporting surface, not the primary focus of the role.
- Own PostgreSQL data architecture end-to-end - schema design, query optimization, indexing strategy, migrations, and data integrity across production systems.
- Partner directly with the DevOps/Infrastructure team to assess PostgreSQL instance health, performance, capacity limitations, and instance-level design decisions (beyond query/schema tuning).
- Design and lead enterprise integration architecture - event-driven and asynchronous patterns, message queues, third-party API integrations, and multi-consumer data fan-out across downstream systems.
- Lead code review and pairing on the team's hardest and highest-risk work, personally driving resolution on the most complex technical problems.
- Drive CI/CD pipeline improvements, including test automation, deployment safety, and rollback procedures.
- Monitor production health using observability tooling (e.g., PagerDuty, logging/metrics dashboards) and lead incident response and root-cause analysis.
- Mentor engineers through pairing, code review, and informal technical growth conversations - partnering with the Engineering Manager on formal career development, hiring, and performance reviews rather than owning them.
- Partner with product owners, QA, and adjacent platform teams to scope work, surface technical risk, and inform delivery timelines - without owning sprint planning or backlog grooming.
- Champion secure coding practices, database access controls, and compliance with data-handling and change-management policies.
- Own the team's AI-assisted development practice - already a heavy part of the workflow (Claude, Claude Code, GitHub Copilot) - and push it further: tooling choices, workflow patterns, and review standards for AI-assisted and AI-generated code.
Required:
- Bachelor's degree in Computer Science, Engineering, or a related field, or equivalent practical experience.
- 7+ years of professional software engineering experience with Python, including proven, deep hands-on expertise with Django (models, ORM, DRF or equivalent, admin, middleware) - not just general Python.
- Track record of being the go-to technical authority on a team: architecture decisions, the hardest debugging/design problems, and setting technical standards - whether or not the title was formally "lead."
- Strong hands-on experience with PostgreSQL: schema design, query optimization, indexing, migrations, and troubleshooting performance issues at the query and schema level.
- Demonstrated experience designing and building enterprise integrations - event-driven architectures, message queues (e.g., SQS, SNS, Celery), and third-party/partner API integrations in production.
- Demonstrated experience building and maintaining RESTful APIs or backend services in a production environment at scale.
- Working knowledge of CI/CD pipelines, version control (Git), and automated testing practices.
- Experience with cloud infrastructure (Azure, AWS, or GCP) and containerization (Docker/Kubernetes).
- Working proficiency in React - comfortable building and reviewing a lighter-weight front-end layer. This is a backend-first role; deep front-end specialization is not expected, but the person needs to be credible in reviewing and occasionally writing React code.
- Hands-on, day-to-day experience with AI-assisted development tools (e.g., Claude Code, GitHub Copilot) in a production engineering workflow - this team already uses AI heavily, and the role owns pushing that practice further, not introducing it.
- Proven, clear written and verbal communicator - able to explain technical trade-offs precisely to both engineers and non-technical stakeholders.
Preferred:
- Experience partnering with a DevOps/Infrastructure team on database instance-level performance, capacity planning, or platform design decisions.
- Experience operating services at scale in a retail, e-commerce, or education technology environment.
- Familiarity with monitoring and alerting tools such as PagerDuty, Datadog, or Grafana.
- Experience integrating with e-commerce platforms (e.g., Shopify) or similar partner/vendor systems.
- Experience with database archiving strategies and long-term data retention planning.
- Prior experience as the lead technical voice through a platform stabilization or modernization effort.
- Experience working in a compliance-driven environment (e.g., SOC 2, NIST 800-53, FedRAMP/StateRAMP-style frameworks).