Interview by Thomas Peham
April 24, 2015
Photos by Infinum
From his first web projects to managing a web & software agency with more than 70 people.
At the age of 19 Tomislav discovered his passion for building software. Despite the experience of his father's business during war, Tomislav decided to follow his entrepreneural path and start his own company.
Share this interview:
Thanks Tomislav for your time. Can you please describe yourself in a couple of sentences?
Hello, my name is Tomislav Car. The last name is pronounced “Tzar” and it's a Croatian word for emperor actually. I'm the CEO at Infinum. Infinum is a software design and development agency based in Croatia. We've been around for 10 years now and I'm one of the founders. I was previously a software developer doing mostly web development. Then, I founded the company with my partner. Later, we brought other partners on board, one thing led to another and now I'm running the company with almost 70 people in various locations in Europe and the US.
So, you’re quite a global agency, right?
Exactly! Our clients are literally all over the place but we do have a couple of countries that most of our clients come from. The US is obviously one of the biggest ones, but we also the Netherlands, Germany, Ireland, Austria, Australia and others.
How does a typical day in the life of Tomislav Car look like?
I guess there’s no typical day, since my job description has always been changing in the last couple of years. It's never the same because when we started the company there was 2 of us, and I was doing development (mostly Ruby on Rails).
Then at one point, when we hired more people, I was doing project management. I was talking to clients and other developers were doing the actual coding and designing. I don't deal that much with clients today. I'm mostly involved in running the company and it’s strategy.
You know how they say that a good successful person needs to get up early at 6 am? I just can't do that. There's no way. I'm more of a person that likes to work late and then wake up late. If that's the precondition for success, to get up early, I'm never going to be successful.
My typical day is just mostly waking up, and then first in the morning handling a couple of emails or something that's urgent. Then I head out to the office and basically have meetings with the team or outside partners. I still handle a lot of sales-related stuff and work with bringing in new business. I talk to future clients to see if we fit together as companies. So, during the workhours, my day is mostly talking to people, emails, calls and meetings. Later in the day I do more “creative work” like reading, writing or devising plans.
In the evenings I get together with friends, which, turns out, are a lot of the sake people I work with. There's no real point in doing business if you don't have fun while you’re doing it, right?
I also ride a motorcycle which is fun, and have a small white dog that hangs out in our office and tries to hump the lady dogs.
You studied computer science at university. Is there any lessons learned from your university time you'd like to share?
I studied computer science in Zagreb and there’s a very good computer science university there.
Basically a lot of the stuff you learn there is hardcore theoretical stuff. There's always this question of should you go to university if you want to be a good programmer. Going to university is good for the social aspect and it's good for training yourself to have a good work ethic.
But, you need to be aware that a lot of the knowledge you get at university, you won’t be able to use in your day job as a programmer. However it’s good to know these theoretical basics as they help you understand modern software development problems better.
I mean for me when I went to university I learned a couple good things, I learned a lot about databases and the architecture of how a computer actually works. Stuff that I would probably never learn on my own, because I was mostly doing web development and I would probably never learn how a CPU actually works.
I think it's good to go to university. I don't think you should take it too seriously and expect that a degree is your ticket to success. You should do actual programming and start working while you’re still studying at university.
Also, the thing is, if you live in the US, getting a degree is very expensive. Then it's really a matter of question - is the cost of going to college worth the benefit? If you live in Europe university is free. We as Europeans should use this opportunity.
Has there been any big influences in your childhood which influenced you later on in your career path?
I got my first computer at the age of 13. A couple of my friends had computers when they were a lot younger, but I got mine when my dad brought it home from work. It was actually a decommissioned PC he didn’t need anymore at work.
When you're a kid, you just want to play videogames, but this machine was too old to run any good games, so I started to draw some stuff in Microsoft Paint because I was bored. That’s how I discovered graphics.
Afterwards I started to program some stuff in a programming language called QBasic and that’s how my career kickstarted.
This is at least for the software development aspect of my job. Then there's also the business aspects
My dad owned this shop where he sold car parts in the 90s. He was an entrepreneur and although the war just started in Croatia he wanted to start his own business. Looking back, it was a major risk for him but he still went ahead and did it, he wasn’t afraid. I always admired that, the way he ran a business with the constant risk that everyday it could be bombed and completely destroyed like a lot of parts of the town were.
That influenced me to open up my own company when I was 19 years old. My friend Matej and I started the business out of college and basically never looked back.
Have you ever thought about leaving your job as a CEO of your own company and getting a “normal job” somewhere else?
It says on my LinkedIn page that I never had a real job because, you know I never actually considered this, what I'm doing, a real job. Because it's not a job - it's basically just a lifestyle.
And sure, every other day I think about just doing something else. Because, every other day it's hard and you have all these problems that just never stop. But I would probably never leave for real, no. I never thought about actually getting a real job.
We just started doing this when we were in University. In the first year of University we did some coding. We made an application for really “dumb” mobile phones back then. We sold it to some guys from Malaysia and got some money.
So, then we had this money, and we were kids basically. We had, like, five thousand dollars or something like that. And we thought, "Okay are we going to spend this, or what do we do with it?" And we're like, "Let's open a company." So, that's what we did.
I think I am unemployable.
Our biggest problem was at the beginning, because we never worked anywhere so we didn’t know anything about how companies work. But we learned as we went along.
But I don't know how and if I could work in a “normal job”, because I think I am unemployable.
What do you really love about your job as a CEO?
I really, really enjoy the people I work with. So, a lot of these people actually were my friends before I started the business. And then they started working with us. But also, a lot of these people became my friends after they joined Infinum.
At Infinum there’s five of us that are partners, who got in on the ground floor. What I've learned looking at other companies is that it is hard to maintain a business where you have five people who make decisions.
Usually they don’t get along, fights, tensions arise and partnerships fall apar. We never fell apart. Nobody left and said, "Ah, I don't want to work with you guys." That kind of level of camaraderie is something that I really enjoy and I think it's one of the basic things that works at Infinum right now.
So, you learn all these different things across a variety of industries which is really interesting.
That’s great. Would you call that you big motivation?
My biggest motivation is just kind of growing the company and getting better every day. So, I look at my company like if it's a computer algorithm. You know how you have a computer algorithm and you can do optimizations on it?
You want it to always to work better and faster and you want the code to simpler and more beautiful. So you iterate over it and you refactor it and you make it better every day.
That's how I look at my company. Every day we’re trying to improve either the processes to make it work faster, better, make it simpler. Or we refactor it - reorganize it and move people into other roles and work on making them better.
And that's my motivation. Just doing it better and better and better and for everyone in the process to be happy.
Are there any tools you are using on a daily basis which you can share with us?
We have a lot of tools that we use internally. We also build some ourselves. The one we use the most is Productive.
At one point, we developed a tool for running the internal process of an agency business. With Productive, you can manage your sales pipeline, client projects, contacts and task and what’s most important - calculate profitability in realtime.
We started building it three years ago as an internal project at Infinum. We couldn't find a tool on the market that actually solved the problem we saw right in front of us. If you are an agency, you basically use five or six different tools for running your business at least. You use something like Harvest for time tracking. Then you use Highrise for CRM. Then you use Basecamp or Asana for task management. Then you use some sort of scheduling tool maybe. Then you use something for creating proposals. So there you have a plethora of tools, all the data is duplicated across all these different tools - users, projects, clients, that sort of thing - and barely integrated.
That was one of our problems. And the other one was we couldn't actually figure out our profitability for each project. We knew how many hours we'd spent but we didn't know how much money that cost us. Are we actually making money or aren't we?
And so we built Productive that helped us solve all of this. And we knew if a project was going to shit because we knes if we were actually losing money on it. In the end, as a company you need to be profitable, thats the whole point.
Once we built the tool, we started showing it to other consultancies and agencies and they were like, "This is great! We need this! We want this!" So, we decided to spin it off into a separate product that we're selling to companies similar to us.
So how do you handle that kind of product versus project tasks?
It's the biggest problem you have when you are spinning of a product from an agency business model. A lot of agencies go into this and say: "Oh, we're going to do custom development for clients. And then, when we have time, we are going to develop our own product."
This could work, in theory, if you ever had surplus time. But you never do. In the beginning we also did it like that. But, when we built an MVP, and when we saw that the product works and we can sell it - we allocated dedicated people to work on it. That's what we're doing now, and it's working out well.
Is there any advice you would give yourself as a fourteen-year old?
I think one of the biggest mistakes I did when I was younger was not researching problems well enough. I’ve noticed this also going around.
As a young fourteen or eighteen year old you have the idea that you want to build an app. So, the next logical thing is - you start building it, right? Wrong.
Actually, what you should do, is you should just sit down for two weeks and just research the shit out of the problem. Find all the competitors. Find everything that these competitors are doing. Read about their business models. Do your due dilligence.
Then decide if you want to do this and if there’s any business sense in doing it. But you know, when you're a programmer, you attack any problem with programming skills instead of common sense. So my biggest advice - do some quality research.
Do you face any challenges or pains in the field of software testing?
Regarding software testing - we do two types of testing: manual and automated testing. For manual testing we have dedicated QA people that do the testing. We mostly do that on mobile apps, because they're harder to test in an automatic fashion. We also do that on projects that are too small or need to be out very quickly and don't have time to do proper automated tests.
For bigger projects we do automated testing. We have set up a Continuous Integration process and we use Semaphore for running it and we’repretty happy. We use that as a CI server for most of the stuff we do and then we use your basic set of tools like RSpec, Shoulda and others.
Testing on projects you do for clients can be quite a challenge. Clients aren’t usually tech-savvy and sometimes it’s hard to communicate and explain why tests are useful. I think we as a company, and even as an industry should do a better job of communicating the need for automated testing to non-tech clients.
Do you face any challenges because of being a distributed team?
We found that working remotely works if people have a certain level of expertise. It’s a bigger challenge to work as a distributed team if you have people that need to be trained your team. We also found out that it's very, very beneficial for the company and for knowledge sharing in general to have people in one room, and have them hang out regularly.
The great benefit of being distributed for me is that I can just go to the beautiful Croatian seaside for a month and work from there.
If I want to of course. I never do it.
What do you think will be your next challenges in the field of software engineering?
Predicting what will happen in the next couple of years is like buying a lottery ticket.
We’re looking at all these different programming languages that are popping up all over the place. There is a lot of stuff going on in the software development industry and I think a big challenge for us is just seeing what's going to stick and what's not.
Because today, when you embrace a technology stack, you invest a lot of your own time and resources to get the knowledge and processes in place. And then if you use something and it turns out the technology wasn’t that great to begin with -, you’ve basically thrown a lot of money through the window.
Do you read any web development software engineering books or blogs which you would like to share with us?
I read a lot. Actually, I don't read a lot books. It's just that for me it's hard to get a lot of focus and step out for a couple of hours to read something. I have a couple of blogs that I hook up to the Pocket app using IFTTT.
The things I read are a mixture of different software development blogs or some general business, technology and design stuff. I don't do coding today, but I'm fairly familiar with the technologies that are out there, and reading is one of the ways I do it. I would probably be completely outdated if I didn't read a lot about technology.
Off the top of my head, stuff that I read include: Mark Suster, Benedict Evans, Marco Arment, Sam Altman, Signal vs Noise, Giant Robots from Thoughtbot and others.
And of course - The Capsized Eight, the Infinum Blog and whatever interesting pops up in my Twitter and Facebook feeds.