Nikola Tanković, Developer in Pula, Croatia

Nikola Tanković

Cloud Computing Developer

Pula, Croatia
Toptal Member Since
April 13, 2018

Nikola is a software architect, researcher, and software engineer. As a university assistant professor with a Ph.D. in computer science, Nikola has a robust analytical approach to problem-solving, which yields practical and effective solutions. Nikola's communication and coordination skills were developed throughout a six-year CTO and consultancy stint in various software engineering projects from diverse business domains.

Nikola is available for hire
Hire Nikola


Fortune 500 Company
Spark, Data Engineering, Apache Spark, Machine Learning, Data Analytics...
Juraj Dobrila University of Pula
Blockchain Development, Unity, C#, JavaScript, Python
Maistra d.d. | Adris grupa
Machine Learning, Data Analytics, XGBoost, Tableau, SQLite, R, Pandas, Python


Pula, Croatia



Preferred Environment

Visual Studio Code (VS Code), Git, Vim Text Editor, Linux, MacOS

The most amazing...

...thing I've developed was a real-time hotel occupancy forecasting and price optimization microservice for a large client in the hospitality industry.

Work Experience

2020 - PRESENT

Senior Software Engineer | Data Scientist

Fortune 500 Company
  • Contributed to the development of ETL processes using PySpark and EMR.
  • Developed abstractions for unit testing PySpark applications.
  • Developed PySpark applications for preparing the datasets for further modeling.
  • Contributed to the development of advanced data quality assessments using PySpark.
Technologies: Spark, Data Engineering, Apache Spark, Machine Learning, Data Analytics, AWS EMR, Pandas, PySpark, Python, SQL, Big Data, Jenkins, Data Science, GNU Make
2016 - PRESENT


Juraj Dobrila University of Pula
  • Lectured about dynamic web applications, software engineering, and game development courses.
Technologies: Blockchain Development, Unity, C#, JavaScript, Python
2016 - PRESENT

Technical Consultant | Software Engineer

Maistra d.d. | Adris grupa
  • Integrated machine learning algorithms for real-time processing of hotel reservations, outputting occupancy forecasts and Pryes optimization suggestions.
  • built a data pipeline from transactions to forecasting and optimization.
  • Monitored processes and automated data quality checks.
Technologies: Machine Learning, Data Analytics, XGBoost, Tableau, SQLite, R, Pandas, Python
2018 - 2018

Developer (Data Visualization)

MIT Media Lab | Constitutionology
  • Extracted and transformed data using Pandas.
  • Built a custom scrolling framework compatible with Vue.js and D3.js.
  • Created several data visualizations and animations.
Technologies: Vue, Pandas, Python, D3.js, JavaScript
2018 - 2018

Data Engineer

MIT Media Lab | Skillscape
  • Extracted and transformed the required data for the web application to keep it compact.
  • Created an Angular 5-based front end and integrated it with D3.js for advanced interactive visualizations.
  • Developed multiple interactive D3.js visualizations (networks, charts, and maps).
  • Applied Pandas and fuzzy matching to merge heterogeneous datasets.
Technologies: Data Analytics, D3.js, Angular, Pandas, Python, JavaScript
2009 - 2016


  • Led the development of both the back-end and front-end teams for a model-driven multi-platform information system. The end result was implemented in over a dozen South European customers in the supply chain management and retail domains.
  • Managed and led the development of a mobile and desktop cloud cash register software-as-a-service (SaaS) product with several thousand SME clients.
  • Built a fast in-memory Java-based OLAP solution that was capable of handling several million records efficiently.
  • Developed low-level Java drivers for a Bluetooth card payment processing terminal.
  • Designed a domain-specific language for specifying the database structure, REST services interfaces, and business processes workflows interpreted on a mobile hybrid web application based on PhoneGap.
  • Integrated Pentaho OLAP BI for various clients; programmed numerous MDX queries for extracting data from datamarts.
Technologies: Machine Learning, Data Analytics, C, PostgreSQL, GRAPH, Neo4j, Android, JavaScript, Java
2006 - 2012


  • Engineered two major releases of a custom content management system that was implemented in a large Croatian hosting service company.
  • Implemented an eCommerce solution for several Croatian retailers.
  • Created a web portal for a tourist accommodation aggregator company based in Germany.
  • Implemented a PHP and MySQL back end and an HTML/JavaScript front-end web application.
Technologies: JavaScript, CSS, HTML, PHP


MIT | Skillscape Project

The Skillscape project was done on behalf of the Scalable Cooperation group at the MIT Media Lab. This project is part of a broader effort to help society understand how artificial intelligence and robotic automation can impact human labor.

My role was to extract and merge data from heterogeneous datasets and visualize them within an interactive web application using multiple D3.js techniques.

MIT | Constitutionology Project
A project of science and law where network science and machine learning help to protect vulnerable minorities in a rapidly changing world.

Constitutionology is a neologism for the scientific analysis of national constitutions. Techniques such as information retrieval, network analysis, and natural language processing allow us to understand how constitutions change and what causes specific provisions e.g., protection from child labor or the right to privacy to be adopted.

Cash Register SaaS

Cash Register is a multi-platform software-as-a-service (Saas) application for issuing invoices on the go that also supports Windows, Android, and iOS platforms.

Technologies: Java/PostgreSQL for the back-end, JavaScript for the web-based front-end, and Java/Android for the native part of the hybrid mobile application.


Edmond is a revenue management optimization tool used in the hospitality industry.

My role was the implementation of the microservices for forecasting occupancy and proposing optimal rates.

Evolving Software Systems: Analysis and Innovative Approaches for Smart Management (EVOSOFT)

Evolving complex software systems (EVOSOFT) have become a central part of a rapidly growing range of applications, products, and services supporting daily human activities from all economic sectors.

As they are often distributed, heterogeneous, decentralized, and inter-dependent and operating in dynamic and unpredictable environments, availability and reliability become key properties for its operation and future evolution.

The novel-and-still-unexplored area of research addressed in this project aimed to understand how abstract software structures and local system properties influence fault distributions, thus affecting mission-critical system properties (among which concerned availability, reliability, and the development of innovative approaches for smart management of their operation and evolution).

My Role: Researcher

Optimizing Cloud Information System Configuration Compliant With Service Level Agreement, PhD Dissertation

This thesis introduces ElaClo, a framework for optimizing application configuration in a cloud environment. ElaClo optimizes the software assembly phase from automatically extracted application models. ElaClo was implemented as an expert tool and evaluated on a real-life cloud application from the retailing business domain where ElaClo was applied to select optimal configurations with regards to service response time objectives and infrastructure costs.

Contributions of this thesis are a model of the execution environment for optimizing cloud information system with regards to quality and infrastructure cost, a component-based information system architecture for dynamic reconfiguration, a method for evaluating the performance and cost and selecting configurations compliant to service level agreement, and evolution algorithm for optimizing configurations in the simulation environment.

Mobile Cryptocurrency Exchange Platform

I developed Android and iOS mobile applications in the Angular/Ionic 3 framework. It connects to a Python-based back-end that enables live trading—aggregating the current prices, offers, and orders across several cryptocurrency exchanges.

Apache Lucene
Apache Lucene is a free-and-open-source information retrieval software library, originally written completely in Java by Doug Cutting. It is supported by the Apache Software Foundation and is released under the Apache Software License. I worked as an open-source contributor for Apache Lucene during the Google Summer of Code 2011 and 2012 program.



SQL, CSS, HTML, Python, JavaScript, Java, R, PHP, Go, C, C#, Solidity


Vue, Pandas, PySpark, Keras, D3.js, XGBoost, Web3.js


Git, Pytest, Vim Text Editor, Jenkins, GNU Make, Tableau


Data Science, ETL, REST, Microservices, Object-oriented Programming (OOP), Microservices Architecture, Model-driven Engineering (MDE), Concurrent Programming


MySQL, PostgreSQL, Neo4j, MongoDB, SQLite


Data Analytics, Big Data, Content Management Systems (CMS), Data Engineering, Cloud Computing, Blockchain Development, Machine Learning, Writing & Editing, Artificial Intelligence (AI), Computer Vision, GRAPH


Spark, Apache Spark, Ionic 3, Angular, AWS EMR, Unity, Truffle


Ethereum, Java EE, Blockchain, MacOS, Linux, Android, Visual Studio Code (VS Code)


2009 - 2017

Doctor of Philosophy (Ph.D.) Degree in Computer Science

University of Zagreb - Zagreb, Croatia

2004 - 2009

Master of Science (MSc) Degree in Computer Science

University of Zagreb - Zagreb, Croatia