Software Engineer
Snowflake
About the Role
Snowflake's Customer Experience Engineering Team is expanding. We are looking for a Software Engineer to join our team at the start of their career. This is an entry-level position where you will work closely with a mentor, tech lead, and manager. Our Customer Experience Software Engineers enjoy developing features into the Snowflake product that aim to greatly reduce friction points that block customers. They are excited by the challenges presented by extracting intelligence from a wide variety of data sources, including structured and unstructured data.
Key Responsibilities
- Implement well-scoped tasks and projects across our stack, including Java and Python services hosted in Kubernetes and Snowpark Container Services, with input from other team members.
- Learn to engage in all aspects of the software lifecycle, from design through supporting the deployment.
- Show accountability for the quality, completeness, and customer experience of the work you own.
- Seek feedback and incorporate input from peers, stakeholders, and design reviews.
- Learn the design of the components you work in, including requirements, use cases, and architecture, and begin developing proficiency in a specific feature area.
- Participate in all aspects of engineering: development, testing, bug fixing and triage, and support rotation.
- Collaborate within a cross-functional team, including product management and design.
- Know when to ask for help in order to make progress and avoid unnecessary rework.
Requirements & Tech Stack
- Experience with Java and Python services hosted in Kubernetes and Snowpark Container Services.
- Working knowledge of modern application design.
- Familiarity with good API design patterns.
- Understanding of the basics of performance and scale.
- Proficiency in at least one of the following (bonus for more than one): Python, Java, Scala, GoLang.
- Familiarity with software engineering best practices: unit testing, code reviews, and design documentation.
- Ability to debug your own code.
- Interest in building strong troubleshooting skills in a cloud environment.
- Ability to write high-quality, readable code that is readily maintainable by others, with consideration for performance, operability, and maintainability.
- Great communication skills, both verbal and written.
- Interest in working with a diverse set of peers and external developers.
- Desire to contribute to the positive morale of the team, help new hires and interns onboard, and work on what the team needs.
- Genuine enjoyment of the art of building great software.
- Love of learning new things.
Qualifications
- B.S. or M.S. degree in CS, MIS, or equivalent discipline.
- Internship or professional experience is a plus.