Dušan Radojević, Developer in Belgrade, Serbia
Dušan is available for hire
Hire Dušan

Dušan Radojević

Verified Expert  in Engineering

Bio

Dušan has over a decade of coding experience in various languages, specializing in JavaScript, Node.js, and Java. He has developed games for the Facebook and Android platforms with Node.js, with some of them having over 100,000 monthly users. Dušan is extremely persistent in solving problems, always going the extra mile to find the optimal solution, and he is a team player who communicates well with others.

Portfolio

LO Games
EJS, Express.js, MySQL, Socket.IO, Node.js, Grails, Java, WebSockets
Freelance and Contract Work
JavaScript, Node.js, MySQL, Java, Data Scraping
OOYYO
MySQL, Java, Data Scraping

Experience

  • JavaScript - 10 years
  • Node.js - 10 years
  • Back-end - 10 years
  • Back-end Development - 10 years
  • MySQL - 10 years
  • Game Programming - 6 years
  • Game Back-end - 6 years
  • Java - 5 years

Availability

Part-time

Preferred Environment

Git, Eclipse, Visual Studio Code (VS Code), Linux, Windows, WebSockets, Data Scraping, Auth0

The most amazing...

...project I worked on was my Forest Rummy card game for Web and Android platforms. It is an online multiplayer card game with over 50,000 daily players.

Work Experience

Full-stack Developer

2012 - PRESENT
LO Games
  • Created several web games for the Facebook platform using Node.js and Socket.IO. The games are real-time multiplayer games so several players can play simultaneously. Socket.IO showed its potential here and it is a great library for WebSockets communication.
  • Developed many interesting algorithms for card games; e.g., an AI for playing card games like a human would by choosing the best move in a given situation.
  • Developed a login system that could be easily used to accept users from various platforms like Facebook, Kongregate, and the web. A user can choose a number of ways to log in to the system and have the same or different experience based on the platform that they've logged in from.
  • Built a competitive league system with several layers and seasons so that the best players are promoted to a higher league and the worst are relegated to the lower leagues.
  • Constructed a tournament system where people need to fulfill several goals in order to qualify for the tournament knock-out phase and then they are able to participate in a skeleton system where four players play and only two can advance to the next round while the other two are dropped.
Technologies: EJS, Express.js, MySQL, Socket.IO, Node.js, Grails, Java, WebSockets

Freelance Java Developer

2012 - 2018
Freelance and Contract Work
  • Mainly developed web scrapers for data collection for various clients via a number of freelancing platforms.
  • Constructed a scraping framework that could be used to build new scrapers very fast.
  • Developed a multithreaded scraping framework that uses proxies in a rotation in order to avoid detection. New scraper could be made quickly this way using most complex proxy settings to scrape very large websites very fast without being detected.
  • Built a proxy checker utility that gathers proxies around the web and tests them for speed and reliability so they can be used by the scrapers.
  • Wrote many web automating programs that were used for various activities (filling forms, submitting, logging in and doing various actions on websites like a normal user would do in order to save time).
Technologies: JavaScript, Node.js, MySQL, Java, Data Scraping

Java Developer

2008 - 2012
OOYYO
  • Developed, in a team of three, the core of OOYYOS’s platform; OOYYO is a global used cars search engine.
  • Created web scrapers that would scrape over 1,000 websites containing used-car ads.
  • Built a database model and relations.
  • Developed a smart engine that could extract ad data even from textual ads and could tell if some random page is about car ad or not; this was used for mass crawling using Apache Nutch.
  • Constructed, as a team, over 1,000 website scrapers and the ads were updating each day with new values.
  • Built up a database that had about 30 million records.
Technologies: MySQL, Java, Data Scraping

Experience

OOYYO.com | A Search Engine for Used Cars

http://www.ooyyo.com
Ooyyo is a global, used-car search engine that is available in many countries. It is an aggregator website collecting ads from other smaller websites and gathering all the ads on the same site.

My role on this project as a Java developer. I built the scraping infrastructure, database model and relations, and intelligent software to get results even from textual ads; speculating about a car's data (age, mileage, price, engine volume, and more). As a team, we developed and maintained over 1,000 web scrapers and updated the database daily; a massive database that consisted of over 30 million records.

Who Wants to be a Millionaire Game

This was my first project with LO Games, a company that I founded. It is a type of quiz game made for the Facebook platform; based on a real TV show with the same name. The game was developed using Grails and Groovy and had over 100,000 monthly users at one time.

Russian Roulette Game

This was the second game that I have developed for the Facebook platform. Since this game could be used by five players at the same time, I needed some new technology to make use of WebSockets in order to make it a real-time multiplayer game. In order to accomplish this, I began learning Node.js and Sockets.IO. The game was a success and it is still available and being played here in Serbia.

Whist Card Game

This is the third game that I've developed for the Facebook platform; it is a multiplayer online card game and is still available to play. It was made with Node.js, Express, and MySQL.

Mau Mau Card Game

This was the fourth game that I have developed for the Facebook platform. Mau Mau was a critical and commercial success. It was played by over 600,000 people on the Facebook network. The game has many advanced features like level progression, acquiring new titles, playing with friends, a champions league, and various tournaments. The game is also available through the website and not just on the Facebook platform on Maumaugame.com.

Forest Rummy Game

This is the fifth game that I have developed for the Facebook platform. The game will be soon available through the website and by using a Gmail login. The game site is Forestrummy.com.

The game was developed in Node.js and was launched in February 2018. It is well received, achieving a 4.5/5 score on the Facebook platform, and has many new features like achievements, levels, titles, leagues, and so on. The game is fully responsive and can be played even on mobile phones with various screen sizes.

Education

2005 - 2010

Master's Degree in Software Engineering

University of Belgrade, Faculty of Computer Science - Belgrade, Serbia

Skills

Libraries/APIs

Node.js, React, Socket.IO, Facebook API, jQuery, jQuery UI, Facebook Login, EJS

Tools

MySQL Workbench, Eclipse IDE, Java Concurrency, Sequelize, Git, Auth0

Languages

Java, JavaScript, HTML, Groovy, CSS

Frameworks

Express.js, Grails, Hibernate, Redux

Paradigms

Asynchronous Programming, Asynchronous Development, Procedural Programming

Platforms

Google Ads, Visual Studio Code (VS Code), Linux, Windows, Eclipse

Storage

MySQL

Other

Back-end Development, Web Programming, Game Programming, Web Development, Game Back-end, Back-end, Objects, Data Scraping, Facebook Ads, WebSockets, Facebook

Collaboration That Works

How to Work with Toptal

Toptal matches you directly with global industry experts from our network in hours—not weeks or months.

1

Share your needs

Discuss your requirements and refine your scope in a call with a Toptal domain expert.
2

Choose your talent

Get a short list of expertly matched talent within 24 hours to review, interview, and choose from.
3

Start your risk-free talent trial

Work with your chosen talent on a trial basis for up to two weeks. Pay only if you decide to hire them.

Top talent is in high demand.

Start hiring