Curriculum Vitae
Personal
information
Name and surname
Address
Phone
E-mail
Damjan Kužnar
Grenc 20a, 4220 Škofja Loka, Slovenia--
Work experience
Employer
Position held
Main activities and
responsibilities
Dates
Employer
Position held
Main activities and
responsibilities
Dates
Employer
Position held
Main activities and
responsibilities
Dates
Employer
Position held
Main activities and
responsibilities
Dates
Boston Consulting Group
Freelance Python developer (Toptal)
Developed single page web app with Vue.js for visualizing machine learning and
optimization results, developed REST API for serving data to web app, deployed
using docker-compose and make for service life-cycle management (updating,
restarting, etc.), dockerized automated web app tests with Selenium
December 2018 - Current
Blocktrade AG, Landstrasse 97, 9494 Schaan, Liechtenstein
VP of Engineering
Overseeing development of an exchange, managing a team of developers,
back-end development, introducing DevOps principles of fast flow, fast
feedback and continuous improvement
March 2018 - Current
Bitstamp LTD, 5 New Street Square, London EC4A 3TW, United Kingdom
Senior developer and Team lead
Leading development of various features on trading platform and integrations
with various external services, reducing technical debt, improving platform
stability and performance
December 2016 – March 2018
Jozef Stefan Insitute, Jamova cesta 39, 1000 Ljubljana
Assistant researcher
Data analysis, research & development of novel artificial intelligence
algorithms, project management, web application development, system
administration, project proposal writing, scientific paper writing
March 2010 – December 2016 (full time), December 2016 – December 2017
(part time)
Employer
Position held
Main activities and
responsibilities
Dates
OCKHAM d.o.o., Kmečka pot 20, 1000 Ljubljana
Part time contractor
Development of J2EE administrative GUI for 3rd party recommendation module
for BeeSmart IPTV platform
May 2010 – November 2010
Employer
Position held
Main activities and
responsibilities
Dates
Optilab d.o.o., Teslova 30, 1000 Ljubljana
Part time contractor
Developing fraud detection prototypes for health insurance companies
Employer
Position held
Main activities and
responsibilities
Laboratory for Artificial Intelligence, Faculty for Computer and Information
Science, Tržaška 25, 1000 Ljubljana, Slovenia
Researcher on European project X-Media
Development of knowledge management system, development of novel
machine learning methods, data analysis
March 2006 – February 2010
Dates
Employer
Position held
Main activities and
responsibilities
August 2009 – March 2009
CODES d.o.o., Koprska ulica 92, 1000 Ljubljana
Student employee
Developing custom extensions for Datalab's Patheon ERP
Dates
May 2004 – December 2004
Education
Institution
Level in national
classification
Dates
Faculty for Computer and Information Science, University of Ljubljana, Slovenia
9. level (Doctorate in machine learning)
Institution
Level in national
classification
Dates
Faculty for Computer and Information Science, University of Ljubljana, Slovenia
7. level (Bachelor degree)
Institution
Level in national
classification
Dates
I. Gymnasium in Celje, Kajuhova 2, 3000 Celje, Slovenia
6. level
2006 - On hold
2001 - 2006
1997 - 2001
Selected project
KYC integrations
Credit Card
integration
Crypto wallet
integration
Metis
Swingy
IJS TV
Integration with several service providers of automated KYC verification and
development of load balancing logic to achieve maximum allowed KYC
verification throughput
Role: Lead developer
Components: Individual integrations components with several KYC providers
based on multiprocessing approach with rate limiting, load balancing
component for balancing verification requests across KYC integrations and retry
functionality
Technologies: Python, MySQL, multiprocessing
Integration with credit card service provider to enable credit card deposits on
an exchange
Role: Lead developer
Components: Credit card payment flow component, secondary (failsafe)
payment checking component, credit card transactions export for accounting
Technologies: Python, MySQL, XML, CSV
Integration with several cryptocurrency wallets for providing the deposit and
withdrawal functionality on an exchange
Role: Main developer
Components: withdrawals and deposits component, transactions export for
accounting
Technologies: Python, MySQL, cryptocurrency wallets (clients)
System for early detection of learning difficulties
Role: Project manager, system architect and lead machine learning backend
developer
Components: Machine learning backend service for detecting learning
difficulties from student grades and attendance records, teachers’ web app and
students’ smartphone apps for preventing/alleviating learning difficulties
Technologies: Python, Pandas, Scikit-learn, MongoDB, multiprocessing, push
notifications, Lavarel framework, SAML
RESTful API backend for Swingy game on tablets and smartphones
Role: Lead backend developer of RESTful API
Technologies: Django, PostgreSQL, Nginx, Docker
Video streaming system for Jozef Stefan Institute
Role: System architect and lead developer
Components: Streaming server that can switch from different video sources
(e.g. prerecorded video/images, IP camera streams, USB camera), Raspberry Pi
clients for video stream playback on monitors, Arnes RTMP streaming server,
Web app for remote controlling the streaming server and RPi clients
Technologies: FFMPEG, MLT Framework, RTMP, Metasploit, Python, Raspberry Pi,
Docker
Virtual assistant
Web based intelligent virtual assistant platform
Role: Project manager, system architect, lead developer and maintainer
Components: Web API for question answering, virtual assistants’ administration
web app, JavaScript, HTML5 & CSS virtual assistant app, native smartphone app
Technologies: Python, HTML5, JavaScript, PostgreSQL, Memcached
Crypto currency
arbitration
Prototype for automated trading of crypto currencies (Bitcoin, Litecoin, etc.)
using arbitration
Role: Personal pet project
Components: Module for scraping data from various virtual currency exchanges
(Bitstamp, Kraken, etc.), module for finding arbitration opportunities based on
graph theory (finding the most profitable paths between two nodes), web based
UI for real time preview (using web sockets), module for automating the trades
for arbitration opportunity.
Technologies: Python, NetworkX, PostgreSQL, Bottle.py, JavaScript, web sockets
Matching engine
Proof-of-concept for low latency (less than 1 ms) synchronous matching engine
with order book persistence and 5ms end-to-end latency through REST API
interface.
Role: Personal pet project
Components: Simple REST API wrapper, matching engine
Technologies: Golang, specialized high throughput database, LuaJIT
Skills and
competences
Back-end
Front-end
Data Science
Python: web applications (Django, Bottle.py), integrations with external services
through web interfaces, web services/APIs, web sockets, scientific data analysis
and computing, multiprocessing
Java: J2EE applications
PHP: Drupal, Joomla, custom scripts
Databases: PostgreSQL, MySQL, MongoDB
Bash scripting
Docker: development and deployment
Docker Swarm: production deployment
JavaScript: JQuery, charting libraries (d3.js, raphael.js)
HTML & CSS: Bootstrap, custom designs, responsive layouts
Simple Android applications
Machine learning applications & data mining
Data analysis & visualization
Development of novel machine learning methods
Advanced use of machine learning software (Weka, Orange, Scikit-learn,
Matlab)
Video & image
Streaming video applications using FFMPEG video library
Video compositing using MLT Framework
Web page design in Photoshop
Miscellaneous
Git source code management
Linux system administration
Project management using Jira
End-user requirements acquisition
System architecture
Technical mentoring
Technical & scientific writing
Publications
Author of Slovenian national patent in the field of machine learning titled “The
process for the intelligent control of cooling devices”.
Scientific publications:
Damjan Kuznar, Rok Piltaver, Anton Gradisek, Matjaz Gams, Mitja Lustrek: An
intelligent system to monitor refrigeration devices. Expert Systems 34(5)
(2017)
Ales Tavcar, Damjan Kuznar, Matjaz Gams: Hybrid Multi-Agent Strategy
Discovering Algorithm for human behavior. Expert Syst. Appl. 71: 370-382
(2017)
Damjan Kuznar, Ales Tavcar, Jernej Zupancic, Mihai Duguleana: Virtual Assistant
Platform. Informatica (Slovenia) 40(3) (2016)
Jernej Zupančič, Damjan Kužnar, Bostjan Kaluza, Matjaz Gams: Two-Stage
Negotiation Protocol for Lowering the Consumption of Convexly Priced
Resources. Proceedings of the 2014 Workshop on Intelligent Agents and
Technologies for Socially Interconnected Systems (2014)
Damjan Kuznar, Martin Mozina, Marina Giordanino, Ivan Bratko: Improving
vehicle aeroacoustics using machine learning. Eng. Appl. of AI 25(5):-
(2012)
Languages
Slovene (native), English (speaking, writing)