Senior Software Engineer, Data
At Instructure, we believe in the power of people to grow and succeed throughout their lives. Our goal is to amplify that power by creating intuitive products that simplify learning and personal development, facilitate meaningful relationships, and inspire people to go further in their education and careers.
We do this by giving smart, creative, passionate people opportunities to create awesome. And that's where you come in:
Our AI team is where a lot of that gets built: applying advanced AI to real problems in learning, and turning research into product capabilities that educators and students use every day.
We're building the data platform behind our AI features: the models, pipelines, and services that hold the data those features depend on. This role owns it in production.
You’ll design the data models, build the services and pipelines that keep them current, and ensure they remain reliable as usage and complexity grow. This is backend and data engineering for systems where getting the structure of the data right is the core challenge.
You'll work alongside data scientists and applied AI engineers who build on what you own, and with our infrastructure team on deployment and operations.
What You'll Do
Own the data models and storage architecture behind our AI systems, across relational, graph, and retrieval-oriented data
Build and operate the APIs, backend services, and pipelines that keep that data current and accessible
Design reliable ingestion and update workflows, including incremental processing, schema changes, and safe backfills
Own data correctness, query performance, and scalability as volume and complexity grow
Turn prototypes into production-ready data services, scoring workflows, and retrieval components
Diagnose production issues and improve reliability, observability, and operational efficiency
What You'll Need
Six or more years of experience building and operating production backend, data, or distributed systems
Strong production Python and SQL, including experience building APIs, designing schemas, optimizing queries, and working with large or complex datasets
Deep experience with relational data systems and strong judgment about when graph or other specialized databases are the right choice
Experience building reliable ingestion and update pipelines, including incremental processing, data-quality checks, schema changes, and safe backfills
Experience designing production services with clear API contracts, versioning, error handling, and performance considerations
Hands-on experience deploying and operating services in AWS using containers, CI/CD, monitoring, and production debugging tools
Strong engineering practices around testing, code review, observability, documentation, and maintaining systems that other teams depend on
It Would Be a Bonus If You Had
Deep experience operating a graph database in production, including traversal performance and query tuning at scale
Experience with versioned, bitemporal, or event-sourced data systems
Experience with vector search or semantic retrieval components (pgvector, OpenSearch, Pinecone, or similar)
Experience with multi-tenant data design and per-tenant isolation
Onsite Collaboration Requirement: This role requires working onsite on Tuesday and Wednesday, with Thursday strongly encouraged as part of our company’s in-person collaboration model.
Why Join Us
Join us and help shape the future of education by turning cutting-edge AI into reliable product capabilities.
At Instructure, we're on a mission to help educators and students learn together, anytime, anywhere, and however works best. You'll join our research-driven team tackling education's bi