
Dušan Radojević
Verified Expert in Engineering
Back-end Developer
Belgrade, Serbia
Toptal member since August 7, 2018
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
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
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
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.
Freelance Java Developer
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).
Java Developer
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.
Experience
OOYYO.com | A Search Engine for Used Cars
http://www.ooyyo.comMy 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
Russian Roulette Game
Whist Card Game
Mau Mau Card Game
Forest Rummy Game
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
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
How to Work with Toptal
Toptal matches you directly with global industry experts from our network in hours—not weeks or months.
Share your needs
Choose your talent
Start your risk-free talent trial
Top talent is in high demand.
Start hiring