Backend Software Engineer (Remote) - Golang

Job description

About Snapp
Snapp is the pioneer provider of ride-hailing mobile solutions in Iran that connects smartphone owners in need of a ride to Snapp drivers who use their private cars offering transportation services. We are ambitious, passionate, engaged, and excited about pushing the boundaries of the transportation industry to new frontiers and be the first choice of each user in Iran.
 
About the role
The engineering team at Snapp is looking for an experienced software engineer to help us develop cloud-native backend services for our extremely large and ever-growing customer base. We are the largest ride-hailing startup in the region, and our primary programming language is Golang.
A successful candidate would be self-driven and excited to learn, develop, and deliver distributed software systems at scale. He or she will have a keen technical aptitude, excellent communication skills (the position is remote), and enjoys achieving results in a fast-paced, dynamic environment. Currently, our primary programming language is Go, but if you have experience building for scale, and the mindset to learn, we are willing to train.
 
This is a remote position, prior experience working with remote teams, the ability to communicate well and with empathy is a must.
 
Responsibilities
Primary responsibilities and skills include the following areas:
  • Building highly scalable, highly available web services to handle millions of transactions per day in a cloud-native environment (we have our own cloud and we control everything from top to bottom)
  • Working on an agile team using CI / CD best practices to deliver the highest quality software possible quickly
  • experiment, test, fail fast, and learn as you go, we are not looking for a cookie-cutter solution to the complex problems we solve, and being remote means we are looking at someone who is self-driven
  • Have an analytical mind, back your decisions with data, empathy for users, a strong focus on quality and optimization

Requirements

  • 4-year college degree in CS/IT/EE
  • 4 years of professional enterprise development experience
Experience With One Or More Of The Following
  • Engineering at Web scale, experience with REST, JSON
  • GRPC, GraphQL, Haproxy/Nginx
  • Experience with monitoring, analytics, and tracing tools (Prometheus/Grafana, Loki/ELK, Opentracing)
  • Testing and Mocking in Golang, Docker
     
Nice To Have Qualifications
  • DevOps exposure (strace, tcpdump, grep), Automated testing, building Kubernetes, Cloud Native Applications, Git, Consul
  • Experience with Redis, Databases (Mysql or Postgres), Queues (NSQ, NATS or Kafka)