About the role
At SamKnows we are looking for a Backend Engineer to join our cross-functional development team. Our backend engineers primarily work on creating backend services and APIs for our client-facing web and mobile applications. The majority of our backend code is written in modern PHP however our newer performance-critical projects are written in better suited languages, such as Java or Go. We are firm advocates of using the appropriate tools for the job.
Our backend services and APIs interact with our vast measurement dataset in one way or another. Our software is installed on more than 30 million devices globally, and this figure is growing daily. To store and access our data we use a blend of database technologies to power our platform, including Presto (on top of Hadoop) GCP BigQuery and Kafka, we also use MySQL for our globally distributed metadata store.
You should apply if
- You think the work we’re doing sounds interesting!
- You share our belief that fast, reliable internet access is rapidly becoming a human right.
- You enjoy building products from the ground up and seeing them used by people worldwide
- You have experience in designing and building APIs that are scalable and well-tested
- You’re familiar with developing web-facing APIs using Java, Go, PHP, Python or Node
- You’re comfortable with exploring issues and prototyping solutions
Technologies we rely on for backend development
- PHP 7 with Symfony for most backend APIs
- Java for mission-critical high-volume APIs
- Kafka and RabbitMQ for queueing
- Redis for caching
- Websockets for real time communication with devices and clients
- Globally distributed MySQL 5.7 for relational metadata storage
- BigQuery and Presto for our measurement datastore
- Docker for powering a reproducible development environment
- The usual array of cloud services, including Github, JIRA, Sentry and cloud hosting platform