Summary
A computer programmer who likes to learn new skills and improve existing ones. Currently doing everything from back-end to networking and front-end programming.
Work experience
August 2019 - Present
Senior Software Engineer at Everon
Everon is an adaptable and compatible platform that offers you control over your charging infrastructure. Working mostly on a backend side of the platform. With Everon you can manage your roaming networks, charging stations, charging sites, tokens, users, billing, propositions, and more.
April 2018 - Present
Senior Software Engineer at Levi9 Global Sourcing Novi Sad
Projects included within Levi9 company are Tele2 Business Portal and Everon - EV charging platform.
April 2018 - August 2019
Fullstack Software Developer at Tele2 Nederland
Work on Tele2 Business Portal consists of designing new software architecture, migrating existing functionalities to modern technologies and breaking monolith to micro service architecture. Every new micro service must meet business requirements, have documentation, logging and active monitoring. Each micro service is deployed to a specific environment. Besides this I'm working on seamless integration between an old UI framework and more modern approaches.
2016 - 2018
Fullstack Software Developer (PHP/Java/Angular)
Working on several automation tools, that help developers to code, test and release projects, decreasing the time to market. I've integrated several technologies while building these tools, mostly PHP/Java for back-end and Angular for frontend. High concurrency is achieved using parallel processes with support of Docker engine.
2014 - 2016
Software Developer ( PHP/Javascript (jQuery) )
Working on a video streaming platform, as a PHP developer for back-end. Also writing scripts for processing, optimizing, editing video files (using ffmpeg) and building frontend with the use of jQuery library.
Projects
Everon - EV charging management
Everon is an adaptable and compatible platform that offers you control over your charging infrastructure. With Everon you can manage your roaming networks, charging stations, charging sites, tokens, users, billing, propositions, and more. It also assist you with various services to make your transition to the e-mobility industry an easy one.
Tele2 Business Portal
Business Portal represents a Tele2 internet portal intended for all legal persons, users of Tele2 network. Project goal is to provide business clients with a straightforward way to view and control aspects of their accounts. The portal brings information together from diverse sources in a uniform way. It provides many functionalities for an efficient control and usage analysis of company services, which include: changing of service settings, ordering of new services, reporting incidences, viewing billing invoices and much more.
CI/CD Tool
An internal CI/CD tool which is extremely lightweight, using minimal computer resources while keeping the current core principles of continuous integration and delivery intact. Any software project can use a predefined pipeline to easily setup dependency, build, test and delivery stages. Software projects may contain developers with different roles which can be modified inside of this tool. Each job is easily reviewable by the staff (depending on their roles) and can be stopped at any time to release resources for other jobs.
Deployment Tool
Deploying apps manually can be tough, as well as testing the same apps in different environments. The aim of this project is to fully automate deploying apps to any environment, running the same set of instructions. A technique called “Two-way binding” is introduced in this project, which allows us to easily write simple JSON files and form nice UI for non-technical personnel, so that they can start using those apps as fast as possible.
Project Control Center
Project Control Center (PCC) is an internal project management application used by company employees.
Video streaming service - social network
Video streaming project (2015) is a service used from web platform or android phone. User is able to record videos with a phone, which are automatically synced with this platform. Platform users are able to see videos from other users, depending on privacy levels they defined.
Education
2018 -
2016 - 2018
MSc in Informatics (Software Engineering) at Faculty of Sciences, University of Novi Sad
2012 - 2016
BSc with honours in Information Technology at Faculty of Sciences, University of Novi Sad
2008 - 2012
Languages
Serbian
Native
English
Fluent
Spanish
Basic
Programming/Script languages
Java
Experienced in developing desktop and web applications.
Java is also my go to language when developing Android apps. I did some socket programming in Java too.
PHP
Proficient in PHP (built quite a number of websites), used core PHP to build pages and wrote my own tiny framework back in the days.
Python
Familiar with Python - mostly using it for Machine Learning
and occasionally for CI builders :)
Javascript
Experienced in Javascript (all kinds of it: ES5/ES6), transpiler TypeScript etc..
Experienced with jQuery library as well
Bash
Wrote numerous scripts to automate repetative tasks, thus saving lot of time.
Operating systems
Linux
I'm using Linux distro Ubuntu as my primary OS at home. I'm also managing Debian/CentOS servers.
Windows
Experienced user of Microsoft Windows
Frameworks/Libraries
Laravel
Experienced in Laravel (both BSc paper and MSc thesis involved a bit of this framework)
Also experienced with everything else that comes with Laravel: Eloquent (ORM), Blade (templating engine), Passport, Envoy (for deployment, although there was an internal tool I wrote for deployments), and experienced with PHP's PHPUnit, Composer...
Spring
Experienced in Spring, Spring Boot
Also using Hibernate as ORM, Lombok to reduce boilerplate code, Maven, Mockito and what not..
Tornado
Experienced with Tornado framework, mostly used for asynchronous processing.
AngularJS/Angular
Experienced with all versions of Angular(JS) framework
ReactJS
Familiar with ReactJS
Not using it with TypeScript (yet)
Application/Web Servers (servlet containers)
Nginx
Very experienced in configuring, optimizing and using it in production. Created all sort of things with it, from load balancers to API Gateways.
Apache Tomcat
Familiar with Apache Tomcat
Apache2 httpd
Experienced* with apache2 web server (with mod_php) to deploy PHP apps
*switched to nginx with php-fpm
thttpd
Using it to build rapid prototypes
Development Tools/Other
Messaging Queues
MQTT, RabbitMQ
Databases
MySQL (MariaDB), PostgreSQL, Oracle 12c, MongoDB
For relational database design I prefer MySQL Workbench
Networking/LB
Experienced with vsftpd, sshd, postfix, HAProxy, netstat, iptables...
Also in general I like to read RFC's and learn more about other protocols
Editors
Experienced with vim, nano, Sublime, Atom
AWS
Experienced with EC2, CloudFront CDN, SES
Visual Studio Code
Favorite editor for Angular/ReactJS apps
IntelliJ IDEA
IDE for everything Java related
+ Android Studio
Eclipse
IDE for everything PHP related
PyCharm
IDE for everything Python related
VCS
GIT, Repo hosts - Bitbucket (previously known as Stash), GitHub/GitLab
For fine grained ACL git repos I use Gitolite
VM/Containers
Vagrant, VirtualBox, Docker (Docker Swarm), LXC