How Good Is The Engineering Team At Crowdfire?

Crowdfire
Crowdfire — The Official Crowdfire Blog
3 min readDec 12, 2016

This is my response to a question on Quora

I really don’t know what’s the right way to answer this. I’ll just put across my thoughts.

Having gone full-time with Crowdfire in 2012, we’re a fairly young company. Our team has a few fresh graduates from the top institutes like the IITs, NITs, BITS, etc. The majority of our team has experience ranging from 2 to 8 years.

Our hiring process is structured such that we evaluate people on the three key principles we look for in our colleagues -

  • Smartness
  • Hardwork
  • Discipline

Besides these, we also evaluate people on other values that help us find the right cultural fit.

One of the biggest advantages that we have as a team is the scale at which we work. Very few core product companies in India are at a scale that we are at. Our engineers are helping over 15 million people reach their target audiences online by writing (scalable) code.

We have a Service Oriented Architecture (SOA). These microservices are written in different languages, and they use different set of databases based on the scale and requirements for each one of them. We primarily use Java and Node.js, with some internal services written in Python. We keep our tech stack up-to-date by adopting new technologies, and introducing new languages depending on the requirements. For example, right now, we’re writing one of our services in the GO programming language. As for the databases, we use Elasticsearch, DynamoDB, Aerospike, MongoDB, MySQL, Postgres, and Redis as a cache. Our server infrastructure is mainly in AWS, with some parts in Google App Engine. Except a few legacy services, we are running most of our workload as Docker containers on Kubernetes.

We use React, Redux, SocketIO, Webpack, Ember, Handlebars, Grunt, Node and Hapi for our web app.

We had set up our product development process a year ago; we have been following it religiously, and it has drastically improved our speed and quality of code. This is how our tech development process looks like:

  1. Functional Document is received from the Product team (the Tech team is involved in this discussion as well)
  2. Then, the Tech team has to create a Technical Doc (TD). This would have the list of APIs that would be exposed along with the responses of these APIs. It would also include the code flow and pseudo code.
  3. The TD is reviewed by the Lead
  4. Once the TD is signed off, we write the code and bring it to life
  5. Every pull request is reviewed by someone else in the team before it’s merged

We also have a few members in our team who contribute to open source projects every now and then. Recently, we open sourced a component for iOS that was built internally. You can click here to check it out. We have also open sourced Java libraries for the Facebook graph API as well as for the Instagram API.

I can write hundreds of pages on how awesome the tech team at Crowdfire is, or how each of them have a product mindset, or how everyone is motivated to help each other or how everyone is writing code with scalability in mind. However, I think laying out the way we function, and the team composition seemed like a better way to answer this question.

By the way, if you like solving problems at scale, we should talk. Did I tell you we’re hiring? ;)

Nischal Shetty is the CEO at Crowdfire :)

--

--

Crowdfire — The Official Crowdfire Blog
Crowdfire — The Official Crowdfire Blog

Published in Crowdfire — The Official Crowdfire Blog

Crowdfire’s blog talks about the latest social media trends, management tools and shares actionable strategies to manage and grow your brand online.

Crowdfire
Crowdfire

Written by Crowdfire

Social media management, simplified. Social listening, Content curation, Scheduling & Analytics tool. Refer & earn up to $420 — www.crowdfireapp.com/affiliates