SlipstreamJobs tracks this role from the company's public career site. Apply directly on the employer's site.
Snowflake is seeking a Principal Software Engineer to lead the Semantic Views team, which builds the semantic layer at the core of the Snowflake platform. This layer enables customers to define logical data models (tables, dimensions, metrics, relationships) once and query them consistently across BI tools, SQL, and AI agents. The semantic layer transforms raw physical schemas into governed, reusable business definitions, ensuring consistent meaning across the organization.
In this role, you will design and develop the semantic modeling layer that translates semantic queries into correct, high-performance SQL. You'll create architecture and design decisions, influence the semantic layer roadmap, and take ownership of new capabilities spanning metrics, dimensions, relationships, and governance. You'll ensure semantic queries produce correct results while meeting performance and scale demands of interactive analytics over petabyte-scale data.
Key responsibilities include partnering with Cortex and AI teams to make the semantic layer the reliable grounding source for natural-language and agent-driven analytics. You'll understand trade-offs between expressiveness, correctness, performance, and cost, building solutions that scale as usage grows. You'll mentor and grow engineers on the team, raising the technical bar across the organization. You'll also ensure operational readiness of shipped features and meet commitments to customers on correctness, availability, and performance.
You should have 15+ years of industry experience designing, building, and supporting large-scale data or systems software. Strong computer science fundamentals in data structures, algorithms, and complexity analysis are essential. Deep experience with query compilation and optimization, database or query engine internals, semantic/metrics layers, or BI and analytics infrastructure is required. You'll need a strong grasp of SQL semantics and relational modeling, with an appreciation for result correctness as non-negotiable. Fluency in Java or similar object-oriented languages is preferred. A BS in Computer Science is required; Masters or PhD preferred.