We are currently on the lookout for a Senior Software Engineer for our Shopper Operations initiatives.
This role is on a team that will help develop smarter ways to connect with shoppers, optimize intelligence and maximize operational success.
Are you passionate about software development, sharing knowledge, growing your skills, and working with great people?
Our 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
- Develop multi-region, high-performance services to manage shopper supply, order claiming, and more
- Work with a variety of technologies: Go (Java with the desire to lear Golang)Postgres, Redis, Kafka, 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 by example
- Engineers have a high degree of ownership for all aspects of their services
- Mentor and share knowledge with the team
Requirements
- Bachelors or Masters degree in Computer Science/Engineering or related field
- 5+ Years of Software Development Experience
- Able to apply functional and object-oriented paradigms
- Able to apply the SOLID principles
- Demonstrated ability designing and interacting 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
- 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