Lead Software Engineer - Segmentation

Bengaluru, Karnataka, India Full-time

About MoEngage

MoEngage is a fast-paced startup that’s helping companies run smart marketing efforts in their effort to reach the customer. We are a leading Marketing Technology Stack provider that is helping brands redefine their customer engagement in the mobile era. Brands use MoEngage to drive long-term, personalised and context-based engagement across channels to help achieve increased customer retention as well as customer LTV. Sitting at a conflux of diverse technologies like Artificial Intelligence, Big Data, Web & Mobile platforms, MoEngage technology analyses billions of data points generated by customers and their devices, to predict customer behavior and build marketing campaigns that proactively engage users.

In just four years since inception, MoEngage is working with leading brands across e-commerce, entertainment, travel, publishing and banking domains among others. With marquee clients like Vodafone, Oyo, Airtel, McAfee, MoEngage has over 125+ paying Customers in the Enterprise & Internet companies space in India, US, South East Asia & EU. With a global presence spanning 35 countries, MoEngage has offices in San Francisco, Berlin, Jakarta, and Bengaluru.

Today, MoEngage is an industry pioneer in the space and engages more than 350M devices. This includes approximately 40B events tracked per month, 30B+ messages sent, to millions of users across the globe.

As part of the Engineering team at MoEngage, here are some things you can expect:

  • Take ownership and be responsible for what you build - no micro management
  • Work with A players (some of the best talent in the country), and expedite your learning curve and career growth
  • Make in India and build for the world at scale of 350M active users, which no other internet company in the country has seen
  • Learn together from different teams on how they scale to millions of users and billions of messages. 
  • Explore the latest in topics like Data Pipeline, MongoDB, Elasticsearch, Kafka, Spark, Samza and share with the team 

and more importantly have fun while you work on scaling MoEngage.

About Segmentation team, 

Segmentation team is one of the core teams at MoEngage, responsible for analyzing billions of events per month generated by millions of users, and building real time query capabilities to power the most advanced user profiling engine available in the industry. As a member of the segmentation team, you will be working on some of core distributed computing concepts as well as challenging CS problems, to write code that processes Terabytes of data in minutes. You get to work on one of the largest in-house self-managed Elasticsearch deployments in India and get first hand understanding of handling data at scale.

Here are some of the challenging projects in the Segmentation team. 

  • Fetching the IDs of >100M users from a sharded mongodb cluster in less than a minute.
  • Scaling an ETL pipeline to sync mongo db with Elasticsearch, while processing more than 300k ops/min
  • Building an in-house MapReduce system on top of Elasticsearch with capabilities to process TeraBytes of data in seconds

Must have:

  • B.E/B.Tech/M.E/M.Tech in Computer Science. 
  • Minimum 4+ years of hands-on developing experience with strong background in algorithms
  • Good knowledge on developing backend applications with expertise in one of the backend programming languages like Python, Ruby, Java etc.
  • Should understand the performance metrics for a system viz. time and space complexities.
  • Experience with Elasticsearch and/or other Big-data tools is a plus.
  • Insights on workings of Database, Queues, Cache, servers.
  • Experience working with Python or NoSQL DBs is a Plus. 

Responsibilities:

  • Responsible for systems end to end - developement to delivery
  • Keep scalability/availability/resilience in mind while building.
  • Interfacing with Product Managers to understand the requirements and deliver accordingly
  • Follow best practices to improve the product quality in the long run
  • Mentoring other team members and help them build the right solutions 

At MoEngage, we are passionate about our team and technology - see below to know more about us and technology.

Life @MoEngage

Tech @MoEngage

Scale @MoEngage

We handle more than a billion messages everyday. Rest assured, you will be surrounded by really smart and passionate people as we scale much more to build a world class technology team.