About Zoran Ravić

The thing that puts me apart from most devs is my ability to lead the project from the technical side.

Main fields of my commercial app development experience are:

Native App dev with React Native / TypeScript

FullStack Web dev with React / Node / TypeScript

Web dev with Drupal / PHP

Game dev with Unity3D / C#

Current Tech Stack

Here's a short overview of the technologies I'm using,
so you can hopefully easily see if my experience would be a good fit for your requirements.


I'm proud that I can say that even the largest of my projects are easy to extend and maintain and TypeScript is the key for this.

I strongly believe that any serious project should use TypeScript.

So much so that I included it in all of my work projects, even back when I worked with PHP frameworks that required a fairly limited amount of frontend code.


My framework of choice for any web project and a big reason behind our client's trust in our products.

Most of my professional experience involved this framework and with a good reason.

React integrates well with the rest of my stack and the large community around it makes it the most reliable choice for me and my team.

 React Native

With my track record I can guarantee that I can develop any app and do it in a fairly reasonable amount of time.

One of the main features of my apps is that I try to make them as flexible as possible in order to allow future changes to be done server side, rather than requiring a new app build. And the flexibility of React is the main thing that lets me do this.


This is really the only way I can imagine hosting a service and not caring when thousands of people are using it at the same time.

I push for serverless whenever I can and by far the most practical and reliable provider I found was Vercel.

I even host all of my personal websites with them, like this one.

A thing I care a lot about is not being bound to a provider, so I write code in a way that would let me easily deploy the website anywhere.


This simple yet powerful framework has been the central point of my production projects for years.

In an effort to popularise it I'm even working on a website for learning GraphQL with interactive examples.

I must note that unlike most developers I avoid the Apollo framework and instead focus only on the core GraphQL framework,
mainly because I don't like being limited to the features Apollo offers.


I've made sure to try every state management library available for React and by far the most powerful and easy to use solution was MobX.

This tool has been powering my production websites and native apps for years and I don't see myself recommending anything else.


While I don't have any professional experience with this technology, yet, I do have very thorough understanding of it and I believe it can have a lot of practical uses for many companies.


While I do like working with MySQL and MariaDB, the database I'd go with for most flexibility is MongoDB.


Users rarely report issues when they encounter them and even when they do they aren't very helpful.
This is why I can't imagine maintaining a project that doesn't use an error collecting platform like Sentry.

Past Work Experience

 Drupal - PHP

At my full-time Drupal web dev job I've worked with the MediaMonks team on a website for GE.

PHP used to be my go-to for web, but I've long since abandoned it in favor of more modern solutions.

 Unity3D - C#

Back when mobile games were getting hot I started accepting jobs as a game dev mostly working on clones of existing games.

I've freelanced with Unity3D for about 3 years before moving to full-time web development.


Formal education

I was always interested in tech, so naturally I studied computer science in both high school and university.

My education focused on C++, C# and relational databases.


I'm from Serbia and I've had private English lessons since I was 10, so I'm basically bilingual for as long as I can remember.

I've been additionally learning French for a long time. I can understand a lot, but I'm still not confident enough to use it.