Backend Engineering, Apprenticeship
Fetch
·
Posted:
May 3, 2023
·
Onsite
About the position
Fetch is seeking Backend Engineering Apprentices to join their team and contribute immediately to building highly performant backend services. The ideal candidate should have experience with high-level languages such as Go, Java, Python, or Node.js, and an understanding of functional or object-oriented programming. They should also have effective communication skills and the ability to learn quickly. This is a full-time position, and success in the role requires the ability to take on challenging problems and design and develop an amazing solution with the mentorship of an experienced team member.
Responsibilities
- Build highly performant backend services to integrate with data stores, message queues, mobile and web platforms, and other systems
- Work on a small, multi-functional team that may include other engineers, a designer, product manager, data scientist and other roles
- Take on challenging problems and design & develop solutions with the mentorship of an experienced team member
- Use high level languages such as Go, Java, Python, Node.js
- Understand functional or object-oriented programming
- Learn quickly and work in a fast-paced and challenging environment
- Communicate effectively, including the ability to translate and explain technical issues to non-technical team members
- Have experience with object-oriented or functional programming languages, relational and eventually consistent databases (MongoDB, Postgres, MySQL), version control system (Git), test writing and quality assurance, and system design
- Bonus points for experience with full-stack development (Kotlin, Javascript, React, Swift), messages queue and event streaming (Kafka, Kinesis, Redis Streams), continuous development, in-memory data stores and caches (Redis, Memcache), and distributed systems.
Requirements
- High level languages (Go, Java, Python, Node.js)
- Understanding of functional or object-oriented programming
- Ability to learn quickly
- Desire to work in a fast-paced and challenging environment
- Effective communication, including the ability to translate and explain technical issues to non-technical team members
- Experience with object-oriented or functional programming languages
- Experience with relational and eventually consistent databases (MongoDB, Postgres, MySQL)
- Experience with version control system (Git)
- Experience with test writing and quality assurance
- Experience with system design
- Bonus points for full-stack development (Kotlin, Javascript, React, Swift)
- Bonus points for experience with messages queue and event streaming (Kafka, Kinesis, Redis Streams)
- Bonus points for experience with continuous development
- Bonus points for experience with in-memory data stores and caches (Redis, Memcache)
- Bonus points for experience with distributed systems