Rethinking remote collaborative development, Cheesecake Labs

After being an early employee at Uber and having to come back to Brazil to finish my engineering degree (one of the tough ones), I’ve realized that the world is a poorly connected place and that this is bad for everybody. There are so many awesome engineers in Brazil working for crappy companies and so many awesome companies in the US that can only hire crappy engineers. Why is it so hard to find other individuals that are working (really hard) to reach a mutual goal? Why can’t the good and dedicated people reach each other more easily?

A result of the need to connect international software development is the recent boom in the number of contracting companies based in emerging countries. These so-called “contractors” were born to outsource tasks that were – at first  – not related to the main focus of the hiring companies, but became more and more important as the software market started eating up many industries. So, when realizing that software had dominated whole sectors, organizations started pivoting their processes and structuring their future based on outsource development.

Contracting basically means following a contract and – no matter how many diagrams or requirements you fulfill – it will never be possible to accurately describe a software product with a piece of paper. Software is art.

What to do then? Well, here’s what we do:

  1. Long/mid term stock options with clients and all collaborators. Make sure everybody is an owner of the shared dream.
  2. Performance analysis. Compensations are updated yearly, based on alignment with the company’s goals.
  3. Quick iterations through vchat videos (must have a good internet). Never waste time by spending 20 minutes typing in what 20 seconds of chatting could have said.
  4. Versioning – github is our new Google. Know your libraries – there are so many amazing tools out there and one of them probably solves your problem.
  5. Make hackathons with all the team together, in person. Having a beer, coffee or some pizza is always nice to better know each other.
  6. Keep connected. Always make sure everybody is on the same page – by knowing each others’ projects – and if they are agreed.

There’s much more information that I would like to share with you guys, so I’ll keep  describing how Cheesecake Labs was created to fix our global development situation and will also get more practical on what we are doing nowadays. Our team will also start sharing useful tools, libraries, ideas and whatever you – our reader – want us to write about, so please stay tuned (subscribe link is right bellow).

If you have any questions, suggestions or any other information please add a comment and we’ll answer. 🙂

Thanks for your time, this Cheesecake is for you!




About the author.

Victor Oliveira
Victor Oliveira

Serial entrepreneur, addicted to mobile devices, technology lover, fascinated by minimalist/functional designs and always learning how to build better IT systems.