Jovan Jovanovic, Developer in Belgrade, Serbia
Jovan is available for hire
Hire Jovan

Jovan Jovanovic

Verified Expert  in Engineering

Software Developer

Location
Belgrade, Serbia
Toptal Member Since
August 21, 2014

Jovan is an entrepreneur and engineer with a strong mathematical background. He doesn't care about the technology but cares about the problem that the technology can solve.

Availability

Part-time

Preferred Environment

Git, Eclipse, Sublime Text, MacOS

The most amazing...

...thing I've done is an implementation of the Shazam algorithm using Fast Fourier Transformation and audio fingerprinting.

Work Experience

Meteor.js Developer

2016 - 2016
Wendero (via Toptal)
  • Built an email finder that returns email address for a given name, surname, and domain.
  • Created an email service for sending/receiving emails using Postmark API.
  • Built a data deduplication engine which finds duplicates and merges data in real time.
  • Created a MongoDB aggregate service for faceted searching.
  • Built a JS-SDK for the current API.
Technologies: MongoDB, Node.js, Meteor

Software Engineer

2015 - 2016
LyricalLabs (via Toptal)
  • Reviewed and refactored code. Used AWS S3 and Amazon MQ for async message processing through the system.
  • Rewrote XML API from PHP to Java.
  • Created a Docker container for the server side.
  • Took part in GUI refactoring using AngularJS.
  • Built a basic billing system using Braintree that supports credit cards and PayPal and generates invoices.
Technologies: Amazon Web Services (AWS), Django, AngularJS, Docker, Java

Node.js Developer

2015 - 2016
Seeds - Playseeds.com (via Toptal)
  • Customized current Countly plugins for analytics.
  • Built an image composer using ImageMagick.
  • Set the deploy mechanism on both test and production servers.
  • Created a few plugins from scratch.
  • Migrated Mongo DB on the production server.
  • Customized the look and feel.
Technologies: Countly SDK, MongoDB, jQuery, Node.js

Full-stack Developer

2014 - 2016
GoSafely (via Toptal)
  • Created a client proxy in Java that redirects all the HTTP and HTTPS traffic to the remote server.
  • Built part of the server API using Node.js, Express.js, and MongoDB.
  • Integrated with an OpenVPN solution to do traffic redirection on multiple platforms (Windows, Mac OS, Android, iOS).
  • Created a PhoneGap mobile app that works with the Node.js server.
  • Supported the front-end of the portal using jQuery and HTML (EJS for templating).
Technologies: PhoneGap, jQuery, Java, Node.js

Audio Software Engineer

2015 - 2015
Wurrly - wurrly.com (via Toptal)
  • Built an audio vocoder algorithm for singers, which corrects false tones in a given music key.
  • Created a web interface for uploading songs and running the vocoder.
  • Created a bash script that transposes the music key of a given song.
Technologies: Bash, C++, JavaScript

Software Engineer, Data Scientist

2014 - 2015
Glooky
  • Developed an algorithm that combines different flight prices, generates all possible routes, and calculates the cheapest combination.
  • Developed a scraping system for several low-cost companies using Node.js.
  • Formed a stable startup team of four people: three software developers and one business developer.
  • Took part in the design and build of the whole engine for finding the optimal combination of multiple flights in one journey. Used Node.js on the back-end and AngularJS on the front-end.
  • Took part in Seedcamp Belgrade 2014 as one of ten startups in the region to pitch in front of investors and SeedCamp decision makers.
Technologies: AngularJS, MongoDB, CoffeeScript, Express.js, Node.js

Software Engineer

2013 - 2014
Sungard
  • Developed part of an in-house load balancing system called "Dispatcher engine" for message transfer via ActiveMQ. Different messages are received from outer systems and sent to the particular virtual machines.
  • Developed a RESTful API for fees calculation using Drools engine.
  • Developed a RESTul API for initial margins calculation.
  • Took part in the design and building from the scratch of the whole system, including data model design, in memory model, and custom load balancer.
  • Passed "Agile 42" Scrum training.
Technologies: MySQL, Spring, JavaScript, Java EE

Software Engineer

2011 - 2013
Experian
  • Developed a data conversion and validation framework using ColdFusion and XSLT.
  • Supported a fraud detection platform on back-end using Java and ColdFusion.
  • Supported a fraud detection platform on front-end using ColdFusion and JavaScript.
  • Spent two months working on place in London. Passed business trainings and took part in design of future plans and roadmaps.
  • Led a small team who supported the existing platform.
Technologies: Microsoft SQL Server, XSLT, Adobe ColdFusion, JavaScript, Java

Web Developer

2010 - 2011
Youngculture
  • Supported an in-house version of ColdFusion, written in Java.
  • Supported an existing company CMS and created various CMS customizations for particular clients.
  • Developed PL/SQL procedures on back-end.
  • Supported client side development written mostly in jQuery.
  • Spent two months working on location in Zurich. Passed business trainings.
Technologies: Oracle, JavaScript, Adobe ColdFusion, Java

Glooky

Advanced travel meta search engine for finding the optimal combination of multiple flights in one journey. Built using Node.js and MongoDB.

Biwiring

Biwiring is social network for audiophiles and people who enjoy HiFi audio experience. It is another project of our team who worked on Glooky. Technologies used: Loopback, Node.js and Mongo.

Master's Thesis

Automatic recognition of music samples (Shazam algorithm). Sound sample is recorded in byte array format. System uses FFT algorithm to transform the signal from time to frequency domain and creates audio fingerprint in a form of hash. Hashes are then used for matching sound sample.

Best position

Software that finds out the best position on a guitar for playing a melody. User inputs list of tones and program returns list of exact positions (position = fret + string). Used Dijkstra's algorithm for finding the shortest path in a graph. Technologies used are Java and JSP.

Ecopedia

A website for ecology built in Joomla! with JavaScript on the client side. I built it as a startup project with one more friend. The site has an educational purpose and helps students exchange knowledge.

Tripsearch

Developed and supported a travel search engine that focuses on Canada and USA travel market. Used ColdFusion and JavaScript.

Java SE 7 Oracle certificate

Passed the Oracle 1Z0-803 certification program.

Languages

JavaScript, Java, AppleScript, Bash, Bash Script, SQL, CoffeeScript, XSLT, Python, C++, C, R, Scala

Frameworks

Loopback, Sails.js, PhoneGap, JPA, Express.js, Netty, Java Agent DEvelopment (JADE), Jersey, Hibernate, AngularJS, Spring, Django REST Framework, Django

Libraries/APIs

Node.js, Socket.IO, Stripe, EJS, JMS, Java Servlets, jQuery, Countly SDK, Facebook API

Tools

Eclipse IDE, AWS SDK, Mongoose, VPN, OpenVPN, Git, Subversion (SVN), Sublime Text 3, Mocha, Adobe ColdFusion, Sublime Text, Java VisualVM, Bamboo, Jira

Paradigms

Object-oriented Programming (OOP), MEAN Stack, Agile Software Development, Functional Programming, Object-oriented Design (OOD), Asynchronous Programming, Event-driven Programming, REST

Platforms

MacOS, Meteor, Oracle, Amazon Web Services (AWS), Docker, Windows, Linux, Java EE, Eclipse, Android

Other

Front-end Development, Algorithms, Machine Learning, Ajax, SSL, HTTP, SOAP, Recommendation Systems, Lambda Functions, PIP, Big Data

Storage

MongoDB, PostgreSQL, Microsoft SQL Server, Redis, MySQL, SQLite

2012 - 2014

Master's Degree in Mathematics and Computer Engineering

Belgrade University - Belgrade

2004 - 2009

Bachelor's Degree in Mathematics and Computer Engineering

Belgrade University - Belgrade

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