Darko Kulic, Developer in Belgrade, Serbia
Darko is available for hire
Hire Darko

Darko Kulic

Verified Expert  in Engineering

Back-end Developer

Location
Belgrade, Serbia
Toptal Member Since
September 27, 2018

Darko is a software architect who has more than 12 years of professional experience. He is always looking to increase his knowledge and expertise with a willingness to dive into the unknown. Darko has most recently worked on applying modern distributed systems, cryptography, and blockchain theory to solving SSI-related problems.

Portfolio

Evernym
Concurrent Programming, Git, SQLite, SQL, Back-end, Hyperledger, Python, Rust
Telesign
Concurrent Programming, Git, Flask, MongoDB, Microservices, SQL, Back-end, SMPP...
PSTech
Concurrent Programming, Git, ZeroMQ, VMware, SCCP, SIP, Java, C++

Experience

Availability

Part-time

Preferred Environment

Git, Linux

The most amazing...

...project I've completed was to create lock free algorithms for accessing common containers so that operations may be done efficiently in concurrent environments.

Work Experience

Senior Principal Software Engineer

2018 - PRESENT
Evernym
  • Supported the Indy-SDK project.
  • Designed and developed a secure identity crypto wallet intended to be used for Hyperledger Indy.
  • Built a system of pluggable crypto-wallet storage back-ends which allows for enterprise-scale wallets.
  • Created proprietary software solving SSI-related problems on top of Hyperledger Indy.
  • Worked on library for verified credential exchange.
  • Worked in distributed environments.
Technologies: Concurrent Programming, Git, SQLite, SQL, Back-end, Hyperledger, Python, Rust

Senior Software Developer

2013 - 2018
Telesign
  • Served as a member of the core infrastructure team working on the Messaging Platform.
  • Participated in architectural design and selection of new technologies.
  • Developed a new rest API for generic messaging with support for bulk messaging.
  • Designed and developed the application responsible for detecting problems with delivery routes and switching traffic to routes with better quality at the moment.
  • Designed and developed modular applications for managing connections from clients in a highly available environment. The application is able to be reconfigured without shutting it down using rest API.
  • Designed and developed 2-way SMS product.
  • Wrote applications in C++, Python, and Perl using SMPP, HTTP, and SS7 protocols.
  • Utilized MySQl, PostgreSQL, MSSQL, Redis, Mongo, and Elasticsearch backends along with queuing mechanisms such as RabbitMQ (AMQP).
Technologies: Concurrent Programming, Git, Flask, MongoDB, Microservices, SQL, Back-end, SMPP, SS7, Elasticsearch, Celery, SQLite, Microsoft SQL Server, PostgreSQL, Redis, Perl, Python, C++

Senior Software Developer for Cisco

2012 - 2013
PSTech
  • Contributed as part of the team working on virtualization experience client which enables a high level of security without compromising the workspace experience.
  • Worked on software for Cisco unified communications.
  • Gained a much better understanding of network technologies.
  • Configured and worked with VMware software and Citrix Virtualization.
  • Programmed virtual channel which is established between client and remote virtual environment using ZeroMQ.
Technologies: Concurrent Programming, Git, ZeroMQ, VMware, SCCP, SIP, Java, C++

Software Developer

2011 - 2012
Sungard
  • Analyzed business specifications and requirements in Collateral.
  • Developed highly reliable software.
  • Used object-relational mapping for accessing the database.
  • Developed an application which is used as the cache for access to the database.
  • Learned a lot of stock exchange terms and way of working.
Technologies: Concurrent Programming, SQL, Oracle Database, Java, Microsoft Foundation Classes (MFC), Microsoft Foundation Class (MFC) Library, C++

Software Engineer

2006 - 2011
Premier doo
  • Created GUI applications for sport betting.
  • Design of databases with a large amount of data.
  • Created mathematical algorithms for calculating winnings.
  • Designed and created applications used for displaying statistics and helping operators managing the odds.
  • Verified data and approvals in real-time.
Technologies: Concurrent Programming, SQL, Back-end, PostgreSQL, C++, Qt

Hyperledger Indy Identity Wallet

https://github.com/hyperledger/indy-sdk
Designed and developed an identity wallet used in Hyperledger Indy.

Some of the features that distinguish this wallet:
1. mechanism for searching through encrypted entities using tags.
2. multiple encryption keys using Elliptic Curve Cryptography.
3. pluggable storage system supporting enterprise-scale crypto wallets.

Cisco Virtualization Experience Client

https://www.cisco.com/c/en/us/products/collateral/collaboration-endpoints/virtualization-experience-client-6000-series/data_sheet_c78-689833.html
Part of the team working on virtualization experience client which enables a high level of security without compromising the workspace experience. The client enables the use of rich multimedia capabilities while working in remote environments.

SMS Routing Gateway

Built a high-performance modular routing gateway for SMS messages that supports a variety of different protocol and business modules.

Microservice Organized Infrastructure

https://www.telesign.com/products/sms-api/
Worked on reorganizing messaging platform to use microservices internally to simplify responsibilities of parts of code. Some examples are prepaid wallet which different public services would query to check the balance and to atomically deduct amount.

SMS API, Routing, and 2-way Messaging

https://www.telesign.com/products/sms-api/
Worked on accepting of messages through multiple protocols (SMPP and rest based), routing of the messages, billing, and delivering. 2-way messaging is also supported.
2000 - 2007

Bachelor's Degree in Information Technologies and Programming

University of Belgrade - Belgrade

JANUARY 2014 - JANUARY 2016

Certified Scrum Master in Scrum Methodology

Scrum Alliance - Westminster, London, UK

Libraries/APIs

POSIX, Microsoft Foundation Class (MFC) Library, ZeroMQ, Flask-RESTful, Microsoft Foundation Classes (MFC)

Tools

RabbitMQ, Git, VMware, Celery

Paradigms

Object-oriented Programming (OOP), Concurrent Programming, Unit Testing, Microservices, Service-oriented Architecture (SOA), Functional Programming, Reactive Programming, Event-driven Programming, Agile Software Development

Languages

C++, SQL, Python, PHP, Rust, Java, Perl

Storage

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

Frameworks

Qt, Flask

Platforms

Linux, Oracle Database, Hyperledger

Other

Back-end, System Programming, SIP, SCCP, SS7, SMPP, Microcontroller Programming

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