So, how did you get into development and how long have you been doing it?
I think I got started when I was 10, but I honestly don’t remember. The only thing that I do remember was that I wanted to make video games, so I found a book on game development with Basic and learned to code, mostly through trial and error. Since I had no internet access back then, learning how to code was quite challenging to do, and there was not a lot of info on the subject, but I eventually ended up being able to build some simple games which I shared with my friends at school.
I kept programming sporadically since then, and a few months after I got my first broadband internet connection I found a book on web development, thought “this is awesome”, started making apps, and then never really stopped.
When I started, I built a whole bunch of side projects, mostly as a challenge for myself. I built a couple of sites, a terrible CMS, a forum, and a few dozen small projects. When I started teaching decision theory at a university – which is one of my favorite topics – I built a small application to help professors collaborate with students.
After a year or two of practice, I decided I wanted to start a design and development company with a friend. We started working as freelancers, which we did for a year or two, and after learning the ropes we decided to start Aerolab, with the idea of building the company which we’d love to work for.
One of the biggest surprises for me after I started my business was that once you start working with a development team, you don’t get to code that much. While the transition was difficult, it’s a different type of challenge and I appreciate that. It’s always beautiful to watch junior developers grow into amazing engineers. I never get tired of that.
Tell me a little more about Aerolab, what do you guys do? How did you get started?
Aerolab is a product agency, which means we help companies make products that are a joy to use. We’re very focused on design and do everything in house, every step of the way from the first wireframes to deploying the application live. We don’t really focus on DevOps because it detracts from our core strengths, which are focused on product development.
We started in 2011 and got our first office in 2012. Since then we’ve been doubling in size each year. We are 60 people now, already filling up our 4th office, and we recently opened an office in San Francisco. We are 4 partners: 3 designers and 1 developer, which I think is pretty representative of how important design is to us. We do a lot of projects with startups, but have also worked with a few large companies, mostly from Argentina.
Our strategy is to focus relentlessly on quality and building amazing products. We don’t really care about boring stuff like integrations.
What is your favorite project that you’ve done?
One of my favorite projects was for one of the largest banks in Argentina. Banking in Argentina is kind of terrible from a product standpoint, and it’s pretty old fashioned industry. This bank came to us because no one else was doing mobile or online properly at the time, and they wanted us to create the very best mobile banking experience in the region.
One of the things we found out during that project was how to work with a large, established company. While there was a small cultural clash, both teams ended up doing an astonishing job and it’s one of the case studies we feature proudly in our portfolio. I really liked this project because it’s one of those things where I could explain to my parents what my company was working on and watch them use something we built. Having people tell you they love using a product built by your company feels amazing.
So you’re pretty happy with where you’ve ended up?
I’m super happy because I feel like we’ve built a great company and an even better culture. I genuinely believe that if you don’t learn to love Mondays, there is something wrong with your job.
Where are you currently located?
We’re currently in Buenos Aires, Argentina. It’s one of the best places for tech in Latin America.We recently just opened an office in San Francisco as well, in order to be closer to our clients in the US.
Tell me about Midnight.js and why you created it?
It’s kind of funny how we started doing it. We were working with one of the first Bitcoin banks, and we wanted to create something visually interesting for their main site. We designed a complex landing page, and we wanted to make the logo match the background of the site. It was a minor detail, but important enough that we wanted to find a solution for it.
There was no real way to do that at the time, so we built a kind of hack on top of a bunch of CSS features, which ended up being Midnight.js. We showed it to some people and they loved it, so we decided to open source it. We created a neat landing page showcasing the effect, posted it on a few social networks, and the Github stars started pouring in. It’s a neat thing we did for a customer, and it somehow ended up being a successful open source project.
What are some other cool projects you guys have worked on?
Some time ago one of our clients gifted us an arcade machine for the office, which included Tetris and a whole set of retro games. Of course it became super popular at the office and we ended up having a lot of matches and tournaments. At the time we were also working on our site so we did a few illustrations to showcase the arcade in our agency page. Then somebody came up with the idea of, “why isn’t this animated”, so we ended up building an animated Tetris for the site.
Blockrain is a canvas based Tetris clone with an AI that can play the game by itself, which we then melded together and shipped it as an easy to use plugin. It’s more of a visual thing than an actual game, but it’s fun to play anyway.
We posted it on Dribbble and Reddit, and it even ended up being used for a neat marketing campaign for a storage company. They had an idea of building a small game like Tetris, where you use furniture instead of blocks, and you can get a discount depending on your high score, which is certainly an original use case for the project. For some reason that plugin became popular in Japan as well. I think Tetris is just a huge thing over there.
What are some of your favorite tools, or favorite languages or frameworks?
Because it’s very friendly for building prototypes, and I feel like this is something that most companies get wrong. On that note, most software companies do UI/UX design as an afterthought. That’s catastrophic. Something we believe in is experimentation (messing up a lot). Design and development should be tied together. You can’t just design things in a vacuum and hope that it will magically turn into a decent product.
Developers and designers should work together very closely when building products, to make sure everyone is on the same page, and that’s one of our mantras when it comes to building great teams.
What piece of advice or knowledge would you share with other developers?
I get asked that question quite a bit, and I have one main piece of advice: work on side projects. Find something that interests you, or find something that is frustrating and try to find a solution for it. All the best developers I know, all of them, started scratching their own itches and building something for themselves. One of our favorite interview questions for new hires is “have you ever started your own company or have any side projects/open source projects”. Finding out what people do in their free time tells you a lot about them. It tells you what they like to do, what their values are, and what they like to spend their time doing. Solving problems is what makes a developer a developer. Keep learning. That’s pretty much the only career path that matters. The most important thing we do for the community is trying to help new developers and designers. I feel like we’re a positive influence in our community and helping young talented people get into the industry and become amazing at their jobs is one of the most rewarding parts of giving back, be it with open source projects, publishing articles, or hosting events for the community.