Stefan Katic, Developer in Novi Sad, Vojvodina, Serbia
Stefan is available for hire
Hire Stefan

Stefan Katic

Verified Expert  in Engineering

Software Developer

Novi Sad, Vojvodina, Serbia

Toptal member since March 20, 2017

Bio

Stefan is a full-stack web developer offering deep expertise in Java, JavaScript, user-centered design, and a passion for developing innovative, user-friendly technical products. He has proven expertise in using new tools and technological developments to drive improvements throughout the entire software development lifecycle.

Portfolio

Bonfire
Java, Spring, PostgreSQL, AngularJS, Docker, Ansible, Amazon Web Services (AWS)
HTEC Group
Java, PostgreSQL, React, Angular, Spring
COING
JSON Web Tokens (JWT), Mockito, AssertJ, MongoDB, Angular, AngularJS, jQuery...

Experience

  • CSS - 10 years
  • Java - 8 years
  • Spring - 6 years
  • JavaScript - 6 years
  • PostgreSQL - 5 years
  • MongoDB - 5 years
  • AngularJS - 4 years
  • Test-driven Development (TDD) - 4 years

Availability

Part-time

Preferred Environment

Agile Software Development, PostgreSQL, Java, Linux, Angular

The most amazing...

...thing I've built was a database comparator that would find differences in two databases of any size; ours were 130 gigabytes each.

Work Experience

Engineering Manager

2021 - PRESENT
Bonfire
  • Delivered software on tight deadlines and integrated the platform with fundraiser providers with poor to non-existent documentation.
  • Managed two teams of senior software developers working on various priority tasks in six different applications.
  • Developed a personal development path for the department.
Technologies: Java, Spring, PostgreSQL, AngularJS, Docker, Ansible, Amazon Web Services (AWS)

Technical Team Lead

2018 - 2021
HTEC Group
  • Prototyped, developed, and released software for a fortune 500 bank.
  • Developed and maintained ETL software able to load historical data into DataVault.
  • Created a system to maintain metadata about database schemas, their generation, loading, manipulation, and querying of large data sets based on a DSL.
  • Led the "Java club" inside the company before the HTEC acquisition.
Technologies: Java, PostgreSQL, React, Angular, Spring

Senior Full-stack Software Developer

2016 - 2018
COING
  • Handled the changes in priorities, scope, and technologies.
  • Directed the architecture design and technology innovation to deliver on the product roadmap.
  • Worked with remote colleagues in different time zones.
  • Aided and drove collaboration in technical deep dives and architectural discussions.
  • Designed and maintained a range of databases and services.
Technologies: JSON Web Tokens (JWT), Mockito, AssertJ, MongoDB, Angular, AngularJS, jQuery, JavaScript, Spring Security, Spring Boot

Developer

2016 - 2016
Readybid
  • Helped design scalable and resilient AWS architecture.
  • Designed and implemented a highly scalable authorization and authentication system.
  • Prioritized changing demands to meet tight deadlines.
  • Designed and implemented RESTful APIs.
  • Created and maintained an Angular single-page application.
Technologies: Redux, Jasmine, Protractor, AngularJS, Hamcrest, AssertJ, JUnit, Spring Security, Spring Data MongoDB, Spring Boot

Web Developer

2015 - 2016
Levi 9 IT Services
  • Automated build and deployment for thirty products and services with TeamCity and Octopus Deploy.
  • Worked in a multi-language distributed Scrum team.
  • Worked with a PCI-DSS level 1 client.
  • Developed and maintained RESTful APIs.
  • Wrote pixel-perfect HTML/CSS using various libraries.
Technologies: Rhino Mocks, NUnit, Microsoft SQL Server, ASP.NET Web Forms, Windows Communication Foundation (WCF), ASP.NET MVC, .NET

Solution Architect and Developer

2014 - 2015
Sugarbricks, LLC
  • Mentored and motivated a team of three developers.
  • Bridged communication between various departments (graphics, animation, modeling).
  • Wrote unit tests for high code coverage in NUnit.
  • Developed an innovative quest system using Unity3D and .NET where players can create their own quests and share them with their friends in a web-based environment created with AngularJS.
  • Developed a LOD system that rendered details based on available computational resources of the device.
Technologies: MySQL, Jasmine, AngularJS, NSubstitute, NUnit, Unity3D

Software Developer

2011 - 2014
Freelance
  • Created custom CMS software and desktop applications.
  • Developed websites.
Technologies: Yii, jQuery, PHP, MySQL, JavaScript, Java

Pumble

I worked on a single-page AngularJS front-end, wrote front-end unit tests using Jasmine and Karma, and wrote end-to-end tests using Protractor.

Skipel

I wrote functional tests using Cucumber, integrated Mandrill, and implemented the front-end using Thymeleaf template engine.

Readybid.net

I handled complete architecture and development for a back-office using Spring Boot, AngularJS, Redux, and MongoDB. Additionally, I made complete payment integration with Stripe including custom PDF invoicing, helped design architecture on AWS, created blog, FAQ, training and pricing systems with Flux architecture, and wrote unit and end-to-end tests on fronted with Jasmine, Karma and Protractor, and JUnit with AssertJ on the back-end.

Four Legacy Projects

Added new functionality to legacy projects. Worked with a distributed Scrum team and a PCI-DSS level 1 compliant company.

Automating Integration and Deployment

Created a build process for thirty products and services and automated deployment for a system with many micro-services.

Automated Personality Test

Implemented questionnaire-like functionality with automated score assessment. Made various bug fixes and improvements in the skill testing part of the application, and designed MS SQL database schema.

Educational Games for Children

Led a team of three developers to complete and deliver thirteen of the 26-game pack. Worked in a distributed team, mentoring other developers, and integrated all games with the client's scoring API.

Kali - Destroyer of Evil

Documented and defined specifications for the game design. Proposed and implemented two innovative systems for gameplay. Implemented combat, dialog, quest, AI, and other systems. Developed the web interface for creating and editing quests. Worked in a distributed team. Bridged communication between various departments (graphics, animation, modeling, sound).

Libraries/APIs

Lodash, Stripe API, Spring REST, AssertJ, Authorize.net, Google Geocoding API, jQuery, Google Maps API, Windows Forms (WinForms), Facebook API, Twilio API, AWT, NSubstitute, React

Tools

Webpack, AWS ELB, Gulp, Apache Maven, Bitbucket, Git, Jira, Amazon Virtual Private Cloud (VPC), Cucumber, Bower, Karma, AWS IAM, AWS SDK, Amazon Simple Email Service (SES), Gradle, FreeMarker, Amazon CloudFront CDN, TeamCity, Amazon Simple Notification Service (SNS), Bamboo, Amazon Simple Queue Service (SQS), IntelliJ IDEA, StructureMap, Ansible

Languages

Java, CSS, HTML, Sass, SCSS, TypeScript 2, XML, TypeScript, Java 8, JavaScript, C#, T-SQL (Transact-SQL), PHP, PHP 5

Frameworks

Angular, AngularJS, Spring, Angular Material, JSON Web Tokens (JWT), Spring Boot, Frisby.js, Mockito, Flux, Redux, Jasmine, Spring Security, Compass, Protractor, Selenium, JUnit, .NET, ASP.NET MVC, Yii, MVC Razor, SpecFlow, NUnit, Yii 1, Windows Presentation Foundation (WPF), ASP.NET MVC 5, Unity3D, Entity, ASP.NET Web Forms, ASP.NET Web API, ASP.NET, Rhino Mocks, Hibernate

Paradigms

Unit Testing, Service-oriented Architecture (SOA), Agile Software Development, Test-driven Development (TDD), Responsive, Acceptance Testing, REST, Scrum, Functional Testing, Continuous Integration (CI), Design Patterns, Continuous Deployment

Platforms

AWS Lambda, Linux, Amazon Web Services (AWS), Windows, Docker

Storage

MongoDB, Amazon S3 (AWS S3), Spring Data MongoDB, PostgreSQL, Spring Data, Microsoft SQL Server, MySQL, IBM Db2

Other

Secure Coding, Stripe Payments, Amazon Route 53, SOLID Principles, User Authentication, Domain-driven Design (DDD), Micro SOA, OWASP, Hamcrest, Amazon API Gateway, IIS, Game Design, Windows Communication Foundation (WCF), RPC

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