Clarisights is a SaaS product that enables marketers to gain better insight from their ads and analytics data. Marketers have to deal with data incoming from multiple siloed sources such as ad networks, web analytics, in-app analytics and inhouse customer data. Collating all this data, exporting it, and later analysing it is often an manual job which is tedious, error prone and very limited. Clarisights solves this problem by stitching in data aggregation, data warehousing and data visualisation into one seamless interface. Marketers can connect their data sources to our platform, streaming all the ad and analytics data to our backend, then can run computations on that data, have custom visualisations, drill down / roll up, and query by any other metric. It gives marketers superpowers by helping them make sense of all their data without any of the pain.
We hit product market fit in early 2018, bagged a few top tier customers and closed a $2 Million seed round from top European VCs. We are now embarking on the next phases of our revolutionary business intelligence product and need dedicated and world-class engineering expertise to help bring Clarisights to the forefront and establish our brand and product.
We are looking for a backend architect who has built a career developing and scaling complex services and applications. The ideal candidate would have deep knowledge of software architecture, databases, distributed systems, performance and API design.
This role will involve -
- Understanding the product inside out, figure out the major components of the product and how they interact with each other. You will take up the mantle of scaling the Clarisights backend to the next level, architecting a highly decoupled and scalable system that can ingest and enrich data at lightening speed.
- Take high level design decisions - explore all available options, analyse tradeoffs, think about performance and cost. Finally help the team implement the design and ship an amazing product. You will be creating systems that can scale both vertically and horizontally
- On the database side you will be dealing with large db connections, denormalisation and complicating writes for faster reads, identifying I/O and CPU bottlenecks, designing extensible data models for our use cases.
- Optimising a production cluster for cost, speed, and scale. We spend 10's of thousands of dollars every month on infrastructure costs, how do we minimise this spend?
- Mentor juniors and peers when necessary, help them with PRs and best practices, etc.
Our Tech Stack
On the backend we use Ruby on Rails for the API, MongoDB and Postgres for the datastore, Docker and Kubernetes for the infrastructure, all hosted on the Google cloud platform.
For the frontend we use Webpack, Flow, Babel, ReactJS, Redux and Redux Saga. We also use react virtualised and highcharts for data visualisation. We test using Jest and Enzyme.
Our job doesn’t begin with a feature request or end with a deploy - our ideal team member is someone who is a self-initiator, identifies what we should work on, figures out how best to tackle it, and isn’t satisfied until it’s done right. He/she will have experience build complex, scalable backend applications and would have deep knowledge of software architecture, scalability and backend performance.
- 5+ Years of experience building complex performant backend applications. Knowledge of best practices in backend architecture, including performance, availability, fault tolerance, code quality, deployment practices and usability.
- Should have experience building a complex decoupled system consisting of several services and working with data pipelines. A knack for understanding systems in depth and coming up with clean and creative architectural and performance improvements.
- Experience with both Sql and noSql databases. Understand when and how to use which kind of database and how they can be effectively incorporated into our systems to make things better. Understand schema design, data modelling, scaling the database and best practices. Knowledge of Postgres, Apache Kafka and MongoDB a plus. Previous experience with a column store DB (Druid, Clickhouse, etc) and working with time series data will be very helpful.
- Understand production best practices - CI/CD, containerisation, deployment, orchestration, rollbacks, etc. Having worked with cloud platforms such as GCP or AWS is a plus. Experience with Docker and Kubernetes is a plus.
- Ability to debug things in production, setting up profiling and monitoring of the infrastructure, identifying I/O and CPU bottlenecks and a thrill of making system faster, scalable and fault tolerant.
- Plus points for understanding frontend technologies and being able to effectively coordinate with the frontend team.
- You will be joining us at the perfect stage in our company - we’re neither a struggling startup, nor a slow moving established company. We’ve found product market fit and are doubling down and scaling our product. You not only get to see all aspects of the product but also learn how a company is built and scaled from ground up. Expect to have three years worth of experience compressed into one.
- You’ll have all the opportunity to tackle hard problems, experiment and take risks - even if it means failing. The engineering problems here will let you deal with scale, performance and complexity. You will be helping us scale our data ingestion pipeline for handling petabytes of data as opposed to hundreds of GB of data it handles today; handle huge amounts of data to visualise in the react frontend while still keeping everything responsive and highly performant.
- Work with a great team of people who have a track record of shipping and scaling some solid products at companies like Facebook, Google, Nutanix and Freshdesk. We contribute to popular OSS libraries and are planning to open source a few of our own tools - both backend and frontend.
- We care about your personal development - you get access to books, courses and subscriptions, we get in external mentors when necessary. We encourage you to attend meetups and conferences. We just don’t want you to build great stuff but want you to become great at building great stuff.
- Ideate, experiment, share your work with others. We will encourage you to write blog posts, give talks and contribute to open source. If you’ve done something brilliant we don’t hide it, in fact we go out of our way to promote it to the external world.
- We are like a big family! We’ve turned a nice bungalow into our office and even have a full time cook. We’re redoing parts of our office, you get to decide how the office you work in looks like.
- We have a flexible and open culture. Bring your own device - Mac / Windows / Linux. We provide you with the monitors, keyboards and anything else you need to get stuff done. You will have great pay, a flexible schedule, work from home option and generous vacation time.