Backend Software Engineer - Native Apps
Backend Engineer · Mid · Full Time
Opens Snowflake's application page
Role
What you'll do.
Snowflake's Native Apps team in Toronto is building an innovative App Marketplace platform, seeking a Backend Software Engineer to develop core infrastructure for app lifecycle management, runtime environments, and security frameworks. This role offers the opportunity to work on cutting-edge technology that transforms Snowflake into a comprehensive application platform while collaborating with cross-functional teams to drive high-impact initiatives.
Responsibilities
- Platform Development: Drive high-impact initiatives across Native Apps product areas using Java, Python, and Go
- Cross-Functional Collaboration: Promote strong collaboration with design and product management teams
- Feature Delivery: Deliver complex features requiring close coordination with cross-functional teams
- Product Vision: Contribute significantly to product vision and drive team planning initiatives
- Scalable Architecture: Build backend systems for scale and high performance requirements
- App Lifecycle Management: Develop core building blocks for app creation, versioning, and global rollouts
- Security Implementation: Implement secure sandbox execution environments and access control systems
- Runtime Development: Enable app runtimes for multiple programming languages and execution models
- API Design: Design and implement robust APIs following distributed system best practices
Qualifications
What we look for.
Technical
Backend Development
2+ years hands-on software development experience with significant backend focus
Distributed Systems
Deep understanding of distributed system architecture and design patterns
API Design
Expertise in good API design patterns and best practices
Security Knowledge
Understanding of security principles and implementation
Performance Optimization
Experience with performance tuning and scalability challenges
Education
Computer Science Degree
Bachelor's degree in Computer Science or equivalent technical field preferred
Engineering Fundamentals
Strong foundation in software engineering principles and practices
Experience
Backend Development
Minimum 2+ years of hands-on software development experience
Distributed Systems
Experience working with distributed architectures and scalable systems
Cross-Functional Teams
Experience collaborating with product management and design teams
Skills
Required
Java
Proficiency in Java for backend application development
Python
Experience with Python for backend services and data processing
Go
Knowledge of Go for high-performance backend systems
Distributed Systems
Understanding of distributed system design and architecture
API Design
Experience with RESTful API design and implementation
Security
Knowledge of security principles and access control mechanisms
Preferred
Data Infrastructure
Nice to haveKnowledge of data development tools and infrastructure
Machine Learning
Nice to haveFamiliarity with ML concepts and implementation
Cloud Platforms
Nice to haveExperience with multi-cloud environments
Containerization
Nice to haveExperience with Docker and Kubernetes
Microservices
Nice to haveUnderstanding of microservices architecture patterns
Tech stack
Languages
Frameworks
Databases
Tools
Other
Compensation
Pay and benefits.
Base·CAD 176,300 – 226,300
Equity·Stock options
Benefits
Stock Options
Equity participation in one of the fastest-growing cloud companies
Professional Development
Opportunities for continuous learning and career advancement
Innovation Culture
Work environment focused on impact, innovation, and collaboration
Health Benefits
Comprehensive health and wellness coverage
Flexible Work
Modern work arrangements supporting work-life balance
Process
Interview steps.
- 01
Initial Screening
Phone or video call with talent acquisition team to discuss background and interest
- 02
Technical Phone Screen
45-60 minute technical discussion covering distributed systems and backend development
- 03
Coding Assessment
Take-home coding challenge or live coding session focusing on backend problem-solving
- 04
System Design Interview
Technical interview focusing on distributed system design and architecture
- 05
Behavioral Interview
Discussion of past experiences, collaboration skills, and cultural fit
- 06
Final Interview
Meeting with senior team members and potential manager to discuss role expectations
Full posting
Original listing.
Snowflake is about empowering enterprises to achieve their full potential — and people too. With a culture that’s all in on impact, innovation, and collaboration, Snowflake is the sweet spot for building big, moving fast, and taking technology — and careers — to the next level.
Snowflake is a global platform where thousands of organizations store and process their data. Our Data Marketplace allows our customers to exchange data across geographies, organizationions and cloud providers. We are now building an App Marketplace on top of the Data Marketplace. Think of it as an App Store or Play Store but with the apps running on the Snowflake Cloud, not phones. Snowflake is becoming an application platform. It’s a new, big, and differentiating feature for Snowflake and our customers.
The Native Apps team in Toronto is in the center of this innovation. We’re working on the core building blocks for the apps to support the app lifecycle - creation, versioning, global rollouts, installation and execution in a secure sandbox. We enable app runtimes for multiple languages and execution models. We deal with many aspects of the app framework from access control and permissions, through IP protection to UI frameworks. We’re still early in our journey and we are looking for talented and passionate engineers to innovate with us. Our big, multi-year goal is to launch a hugely successful app ecosystem. We count not only on your deep tech expertise and problem solving skills but also on eagerness to evangelize the new platform among developers.
AS A SOFTWARE ENGINEER FOR NATIVE APPS, YOU WILL:
Drive high impact initiatives that span our product areas and tech stack including Java , python and golang
Promote strong collaboration within a cross functional team, including design, product management.
Deliver features requiring close coordination with cross-functional teams
Be a strong contributor to the product vision and drive team planning.
Build for scale and high performance.
OUR IDEAL CANDIDATE WILL HAVE:
2+ years hands-on software development experience, including significant experience in backend software development
Deep understanding of distributed design architecture, good API design patterns, security, performance and scale.
Knowledge of data development tools, data infrastructure, or ML is a plus.
You go to work everyday striving to be the very best you can be. You're undaunted by ambiguity and are motivated to drive impact.
ABOUT APPS AND SNOWFLAKE:
Our Human Resources Department may use artificial intelligence to support its administrative processes.
This role is available and may represent a new position.
This role is exempt from Ontario’s job posting requirements.
Snowflake is growing fast, and we’re scaling our team to help enable and accelerate our growth. We are looking for people who share our values, challenge ordinary thinking, and push the pace of innovation while building a future for themselves and Snowflake.
How do you want to make your impact?
For jobs located in the United States, please visit the job posting on the Snowflake Careers Site for salary and benefits information: careers.snowflake.com
Redirects to Snowflake's application page.
Other roles
More at Snowflake.
Director of Engineering, AI Enterprise
Director
Software Engineer- Postgres
Mid
Software Engineer - SnowCommand
Mid
Senior Fullstack Engineer - Marketplace Monetization
Senior
Account Engineer
Mid