You need to be crazy to be a CTO — Vincent Oliveira (Tiller Systems)

Alban Dumouilla
CTO.Pizza
Published in
6 min readJan 9, 2018

--

CTO.Pizza summarizes daily challenges of great startups CTOs, heard directly from their mouth during an informal discussion around a pizza. Follow us to stay up to date or register to the newsletter.

Tiller Systems provides point-of-sale software solutions for restaurants and merchants.

Vincent Oliveira, co-founder at Tiller

About you

The CTO needs to show that he can be fully operational technically anytime

What’s your background?

I’m an engineer from EPITA and worked in an IT services firm for about 6 months. I quickly left to start InnovOrder but switched to Tiller Systems which I thought had a bigger ambition, closer to what I was trying to achieve.

We actually met as competitors at NUMA during the final phase of the selections of the first season. We had a common friend that introduced us and the match was quite fast. The Tiller guys had that same vision of entrepreneurship than me where you just go as fast as possible and try everything you can to go big. Our motto is “go big or go home”!

Can you describe your current job?

It’s quite indescriptible but I’ll give it a shot. It’s a lot of things, from managing the tech/product team and its productivity without being up their butts daily. I run an all tech managers meeting with the goal of defining as many KPIs as possible to be able to track the team’s performance. It’s hard to monitor a tech team’s performance accurately!

We’re a central tool for our customers and they can lose money if we do our job poorly, so we have quite a few qualitative indexes to track. Customer happiness is a strong one.

I work quite a lot on the product and vision of the company in general, that’s one of the advantages of being a co-founder. My goal is to remove any friction in the company through technology — from pre-sales to invoicing.

Has your position changed since you got started?

At the beginning it was a lot of coding, and now almost none. For me, the CTO needs to show that he can be fully operational technically speaking anytime. So I use any small amount of time I can to create POCs.

We’ve grown very fast and the app wasn’t ready so we had to change quite a lot of things. I’m constantly looking out for new architectures, try and learn with things that can potentially work, and the teams then pick them up if necessary.

I used to hire quite a lot as well but this part of my job went down since we’ve hired an HR team. Once you start telling yourself that you will likely hire one developer a month or more, you need a dedicated HR.

My latest change is that I now manage managers. That’s an entirely different job than managing developers.

Let’s talk about tech

Watch out if somebody makes the team’s spirit go down

Can you describe your stack?

We run an iOS app on SWIFT and build it like it was microservices — meaning that we build libraries that we then inject in the project to split the different parts of the app.

The backend is historically in Symfony, and the transaction synchronisation part is asynchronous, using CQRS. We run DynamoDB on small services but the bigger ones use MySQL. We use EMR for map-reduce jobs for data processing and analysis.

We’re going to implement machine learning because we want to be able to analyse our customer’s data to drive and give them some advice on how they could improve.

Have you had to change it?

We’ve moved the transactional side from a REST API to an event driven model. Everything else was mostly about adding features — we’ve rebuilt a few things in lambda and dynamoDB because it takes almost no resources.

Have you had any crises?

We’ve had a few of course, rarely major though.

One technical crisis we had was about synchronization of the transactions— we could manage it with a few customers but when the number of customers exploded problems exploded as well.

On the human side, we’ve made a few bad hires that we fixed quite quickly. Watch out if somebody makes the team’s spirit go down, even if they are very good at what they do.

CTO life

I need to show that we are actually a revenue center instead of a cost center

What’s your hardest challenge?

To keep innovating faster than our competitors and in a scalable, stable way!

As a human, give enough vision to the rest of the company for them to understand how important it is to keep investing in R&D. For that I need to show that we are actually a revenue center instead of a cost center.

I’m trying to achieve this through KPIs and we’ve split into feature teams that try to calculate how much the tech generates money compared to how much it costs !

Your biggest responsibility?

Making sure everybody is giving the best of themselves by making sure they are happy and fulfilled. So my goal is to avoid human and technological problems, and make myself less and less useful to the company.

Would you have changed anything you did since the beginning?

A lot of things! But when you look back you need not to forget that everything’s been done in a specific context. We took a lot of bad decisions but it’s important for us not to have any regrets.

It’s because of my past errors that I’m more efficient today! It’s basically called gaining experience. I’d have liked to hit some walls earlier, though.

The people at Tiller

Our coding test has all the solutions in a subfolder in the repository.

Can you describe your team?

The company is quite sales oriented so the sales force is bigger than the tech team and we have to be careful when it comes to making sure everybody works well together. We have loud music in the office and a quite crazy way of working, and everybody agrees that if you want some calm you can just put on your noise-canceling headphones or go in a meeting room!

Our team is quite junior but very efficient and talkative. It’s quite different from a lot of companies where the tech team is pretty quiet.

What are you looking for when hiring?

We’re searching for people that stand out from the rest of the pack. Standing out can mean very different things, we’re open! The human fit is very important but easy to check. We want people that always try their best and aim at becoming the best at what they do.

Our coding test has all the solutions in a subfolder in the repository. If the candidate goes a tries to solve everything without looking around, it’s a bad sign. Without cheating, the test is pretty much impossible.

We want people that can find the information they need in a smart and fast way. I also like to test people on technologies they haven’t used before. If they haven’t mentioned AWS Lambda, they will probably end up having to write a small lambda function.

Any tips for other startups trying to hire? What works, what doesn’t?

You want to build a real company culture, have a real identity. It makes it way easier to see if somebody matches the rest of the company or not.

On the technical side, it’s always a pain. Job ads just don’t work, so we hired head hunters. Watch out for hiring firms that might end up make you lose time.

Future

Can you describe Tiller in 3 years?

Our goal is not to be perceived like a cash register anymore but a complete tool. We want to be the Salesforce of brick and mortar businesses, that manages everything related to the customer.

The biggest challenges to reach that point?

We need to grow our marketplace to get more and more developers on board. We have a lot of work to do on the data we’re currently processing to have a clear vision and be smart about the power and intelligence we can enable for our customers — tell them if a price change has a good or bad impact, suggest them to hire an extra waiter, etc.

Anything to add?

You need to be crazy to be a CTO. When everything goes right, it’s normal. But when things go wrong, it’s your fault!

Stay up to date with the pizzas !

--

--