At Shipt, we are transforming the grocery shopping experience and giving time back to consumers. Shipt shoppers handpick fresh groceries and household essentials, then deliver them to your door in as little as one hour.
We are currently on the lookout for a Principal Software Engineer for our Search and Rec initiatives. This role is on a team that will help drive the next generation of online shopping experiences and maximize retail success.
Are you passionate about software development, sharing knowledge, growing your skills, and working with great people? The Shipt engineering team is growing, and we are looking for extraordinary engineers who enjoy building as much as we do. So if you are self-directed, enjoy autonomy in your work, and are an excellent participant in a team, please apply.
What You’ll Gain
You will get experience working with a cross-disciplinary team shipping real-world products to our customers around the nation. You will also receive hands-on mentorship from your friendly teammates on topics ranging from design to communications strategy.
Your Responsibilities
-
Design, develop, test (unit/integration/etc), deploy, and maintain application code
-
Lead technical strategy and build alignment across multiple teams
-
Advocates for writing code with testability, readability, edge cases, and errors in mind
-
Identifies, implements, and advocates for the adoption of improvements to libraries used widely across teams.
-
Develop multi-region, high-performance services to manage search & rec APIs, data pipelines, as well as infrastructures such as Elasticsearch, Redis, etc.
-
Work with a variety of technologies: Go, Python, Postgres, Redis, Kafka, Elasticsearch, and more
-
Participate in the design process to build efficient, scalable, and maintainable architecture
-
Collect and analyze metrics to drive implementation decisions
-
Design, improve, and document processes
-
Review and collaborate with other engineers on their code
-
Support your team through encouragement and example
-
Engineers have a high degree of ownership for all aspects of their services
-
Support your team through encouragement and mentorship
-
Collaborate in Agile teams with other engineers, Product Managers, and Data Scientists
Requirements
-
Bachelor��s or Masters's degree in Computer Science/Engineering or related field
-
10+ Years of Software Development Experience
-
Able to apply functional and object-oriented paradigms
-
Able to apply the SOLID principles
-
Demonstrated ability to design and interact with complex persisted data models
-
Able to both identify and improve poor-performing code or database queries
-
Able to explain REST principles and design APIs that follow them
-
Experience with SOA, micro-services, and/or distributed architectures
-
You are interested in continually learning and mastering new skills
-
Able to communicate complex ideas and concepts simply and concisely
-
You are willing to monitor and own the production services team
-
You are empathic and enjoy learning from and mentoring other engineers
Nice to Haves
-
One or more of the following languages: Python or Golang
-
ML methods for lexical and semantic search
-
Open-source software and dependency management
-
Object/Document data storage technologies
-
Caching and in-memory database technologies
-
Asynchronous/Multi-threaded Programming Patterns
-
Message queuing technologies/strategies
-
Instrumentation tools such as Dynatrace and New Relic
This position can be 100% remote. #LI-Remote
We are an equal opportunity employer and value diversity at our company. We do not discriminate on the basis of race, religion, color, national origin, gender, sexual orientation, age, marital status, veteran status, or disability status.
Pursuant to the San Francisco Fair Chance Ordinance, we will consider for employment qualified applicants with arrest and conviction records.