Exotel is one of Asia’s largest cloud telephony companies. Our aim is to change the way enterprises look at customer communication. We build the best in class communication products that power the companies of today and tomorrow. Our technology enables customer communication for our clients such as Uber, Ola, Go-Jek, ICICI, IDFC, Redbus, Flipkart, Quikr, Practo, Lazada, Redmart, etc. to name a few. We are a 9-year-old company with humble beginnings. We started as a 3-member team. Currently, we are a 120-member team catering to over 3000 customers across the globe. Our technology has connected over 400 million people across the world and powered over 10 billion conversations. Read our growth story here.
Exotel engineering solves some really cool infrastructure level problems with the goal of ensuring no one misses a call or an SMS.
Our focus is on building very fault-tolerant, loosely coupled, scalable and real-time distributed system
We are generally agnostic of language, technology or tools. Currently our tech stack is built on Golang, Node.js, Ruby, Java and PHP. We use Aerospike, MySQL as data stores, ElasticSearch for search and Beanstalkd for queuing
We emphasize a lot on clean abstractions of code, loosely coupled services and good coding practices
We are very strong believers in "you built it, you own it!". And running a distributed system is very different from just building one!
We are crazy about high availability
Platform engineering group is responsible for the distributed-system (cloud) infrastructure (on which the rest of the exotel microservices are developed and deployed), as well as the data infrastructure. The team’s deliverables significantly influence the reliability (resilience, uptime, accuracy, security, etc.), usability, scalability and optimality of the overall Exotel stack. The deliverables improve engineering and business productivity by abstracting the distributed system complexities and data management overheads.
Some of the key responsibilities of the team include:
Role of a Software Engineer 1 within the team includes
Participate in design, development, testing and maintenance of data Infrastructure (both OLTP and OLAP (big data)): Data analytics/processing frameworks, Data connectors, Data APIs, Reporting, distributed databases.
And/Or
Participate in design, development, testing and maintenance of cloud infrastructure: Compute (K8s), Storage (block storage, Object storage), IPC (queues), Deployments, Observability (metrics, logging), Networking, Security, etc.
Participate in exploration and adaptation of new technologies such as big data platforms (Flink, Airflow, Athena etc) ; BI tools ; Serverless; IDPS and Platform as a service
Monitor existing deployments to ensure committed SLAs are met
A lot of focus in what you do will be outside of just adding features and will be related to pushing a distributed system to its limits - you will be constantly thinking of "how do I scale out my cluster to twice its size with 60 seconds?", "how do I increase the platform uptime from 99.95 to 99.99?", "how to shave off a few extra millisecond in response times?".
We are looking for candidates with a strong understanding of computer/distributed systems and strong programming skills. We want people who love designing and engineering distributed systems (which is lot more than programming)
Last updated on Oct 5, 2024
Bengaluru, Karnataka
·30+ days ago
Mumbai, Maharashtra
·30+ days ago
Bengaluru, Karnataka
·30+ days ago
Bengaluru, Karnataka
·30+ days ago
Bengaluru, Karnataka
·30+ days ago