Velibor Bačujkov
Verified Expert in Engineering
Software Engineer and Developer
Velibor is a software engineer with over 10 years of experience working across the whole stack—primarily focusing on Node.js and Spring for the back end and Android on the front end. His preferred languages are Kotlin, TypeScript, and C#, but he has worked with other languages like Java, C, C++, JavaScript, and Python. Velibor works well alone and on teams and always strives to write high-quality code with great attention to detail.
Portfolio
Experience
Availability
Preferred Environment
Git, IntelliJ IDEA, Visual Studio, Visual Studio Code (VS Code)
The most amazing...
...thing I've made is a fully-fledged online multiplayer board game using a custom-built game engine.
Work Experience
Full-stack Software Engineer
Domain Money
- Led a team of engineers in developing a state-of-the-art Android app using Jetpack Compose and the MVI framework.
- Implemented back-end features related to money movement, such as bank account aggregation and transaction processing, credit card payment processing, and subscription renewal.
- Executed authentication and deep linking functionality across the entire stack, including WebAuthn, Google, and Apple Sign-in and referral tracking.
- Maintained the server infrastructure functionality using AWS.
- Developed the back-end app using Node.js and TypeScript.
Software Engineer
Microsoft
- Handled Azure Service Fabric, a distributed systems platform for deploying scalable and reliable microservices and containers.
- Developed features and fixed bugs in the Service Fabric code.
- Provided a customer-facing RCA to ensure system stability and identify and fix issues in production systems.
Senior Android Developer
Goldman Sachs | Clarity Money
- Developed Clarity Money, a budget managing app awarded with Google Play: One of the "Best of 2017" apps.
- Implemented a data management system for easy data access and manipulation using RxJava and the Realm database.
- Created a framework for UI navigation using Fragments.
- Implemented PIN and fingerprint authentication for secure app access.
- Contributed to other app features and UI elements.
Full-stack Developer
Drum Circle Analytics
- Implemented token-based authentication for REST services using Spring Security.
- Installed SAML authentication with Spring Security.
- Integrated an Angular 4 web app with a Spring Boot back end.
- Contributed to various REST services and Angular 4 modules.
Lead Android Developer
Ingenius
- Developed an Android application for analyzing the user's purchases and giving them healthier recommendations.
- Implemented REST services for receiving and sending the user's purchase data.
- Designed an SQL database for products and discount prices offered to users.
- Implemented analytics using Firebase and Mixpanel.
- Integrated Facebook and Google APIs for account authentication.
Software Developer
Univerzitet Metropolitan Beograd
- Acted as a team lead at the software development center.
- Developed software for creating and editing online lessons for the school's learning management system (LAMS).
- Created a parser for XML DITA files used for storing the lesson text and content.
- Built a system for tracking and displaying errors in the lesson project (missing titles, incorrect classification, and more).
- Implemented an object-repository search using Apache Solr.
- Made a 2D designer tool in C# for editing the LAMS sequence and order of lessons, tests, and other activities.
- Developed a website for publishing the lessons using Angular for the front end and PHP and MySQL for the back end.
Android Developer Intern
Comtrade
- Implemented a trilateration algorithm in Java for calculating the location of a phone based on the distance from three or more Bluetooth iBeacons.
- Created a GUI for viewing the map of a surrounding area using OpenGL ES 2.0.
- Built an asynchronous login and register system for Android devices.
Experience
mDita Authoring Tool
The basic functionalities of the program include creating learning objects and sections containing text, code, equations, images, videos, or sounds. At the end of each learning object, additional activities can be used to test the student's knowledge or share other files related to the lesson.
The program's users can access the online repository of other learning objects and upload the current object to the repository.
TECHNOLOGIES
Front end (C#, C++), back end (PHP, Java, MySQL, Apache)
JKP | Accounting Program
It is a desktop program that stores user data in a local database, exports it, and imports new data from XLS files. Every month, the program generates bills for every user based on consumption and tariff, prints them out, and mails them. If a user doesn't pay his bills, there is an option to send him a warning with an invoice and shut him off.
The program also includes a search feature with auto-complete recommendations to find users easily.
TECHNOLOGIES
C#, SQL, search algorithms, Microsoft Office Interop
RAM Widget DashClock Extension
https://play.google.com/store/apps/details?id=com.mrvelibor.dashclock.ramextensionIt displays the amount of RAM used and offers shortcuts to kill background processes or run custom apps. You can customize its look and set it to run on any app with a click.
If you have DashClock installed, you can choose to show stats on it.
mChat
TECHNOLOGIES
Angular 2, Spring, MongoDB, MySQL
MiniNotes
https://play.google.com/store/apps/details?id=com.mrvelibor.notesIf you have DashClock installed, you can choose to show your notes on it.
Velibot
TECHNOLOGIES
Node.js, TypeScript, MySQL, tree sets, search algorithms
Stratego | The Video Game
https://github.com/mrvelibor/StrategoThe game is made in Java 2D and features an interactive game board with sound effects. You can play against the (brain-dead) AI or other players online by either hosting or joining an already-created game. You can chat with your opponent in a game and pester him with explosions by right-clicking on the game board. The game includes a hidden celebration feature for the winner and a stress-relief feature for the loser.
TECHNOLOGIES
Java, 2D graphics, multi-threaded programming, WebSockets, server programming
Skills
Languages
Java, SQL, C#, TypeScript, Kotlin, JavaScript, Python, C, SAML, CSS, HTML, C++, Apex, GraphQL
Frameworks
.NET, Spring Boot, Spring Security, Spring, Next.js, Rx
Libraries/APIs
Node.js, Stripe, Stripe API, Firebase Android SDK, Google API, Facebook Messenger API, Office API, Facebook API, Google Maps SDK, RxJava, RxJava 2, Plaid API, React, OpenGL, REST APIs
Tools
IntelliJ IDEA, Git, Android Studio, Microsoft Visual Studio, Google Analytics, Firebase Analytics, Plaid, Apache Maven, Visual Studio, Microsoft Excel, Subversion (SVN), InstallShield
Paradigms
Object-oriented Programming (OOP), Functional Programming, Agile Software Development, REST, Reactive Programming, Continuous Delivery (CD), Continuous Integration (CI), Concurrent Programming, Model View Intent (MVI), Microservices, Microservices Architecture, Mobile Development
Platforms
Android, Windows, Amazon Web Services (AWS), Firebase, Linux, Bluetooth LE, Mixpanel, Azure Service Fabric, Azure, Visual Studio Code (VS Code), iOS
Storage
MySQL, Databases, MongoDB, SQLite, Realm, PostgreSQL
Other
Full-stack, Apps, Jetpack Compose, Room, IntelliJ SDK, Web Development, CI/CD Pipelines, API Integration, APIs, Front-end, Back-end, Multithreading, Google, Integration, Distributed Systems, Bluetooth, Chatbots, Game Development, iBeacon, Microsoft Azure, Software Engineering, Microsoft Office SDK, SaaS, Algorithmic Trading
Education
Bachelor's Degree in Software Engineering
Univerzitet Metropolitan - Belgrade, Serbia
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