Mario Smolčić, Developer in Sisak, Croatia
Mario is available for hire
Hire Mario

Mario Smolčić

Verified Expert  in Engineering

Software Developer

Location
Sisak, Croatia
Toptal Member Since
April 11, 2017

Since 2014, Mario has been developing web and desktop applications on the .NET platform. He's worked for companies of all sizes, from startups to corporations, leading technical interviews and guiding smaller teams. Mario's passion and ambition keep him highly motivated to deliver the best solution for every task given. In his free time, he enjoys solving logical puzzles and competes in algorithm challenges.

Portfolio

Infobip d.o.o.
Jira, Git, Swagger, Agile Software Development, Redux, Integration Testing...
Rockport VAL, LLC
Jira, Git, Agile Software Development, PostgreSQL, Amazon EC2, ASP.NET, Jenkins...
EvoBits Information Technology SRL
Git, Redux, Vuex, React, NgRx/store, Angular CLI, TypeScript, Vue, AngularJS...

Experience

Availability

Part-time

Preferred Environment

Git, Visual Studio Code (VS Code), Visual Studio, Windows

The most amazing...

...project I've handled is a multi-user real-time matchmaking platform for online video game tournaments.

Work Experience

Software Development Consultant

2019 - 2019
Infobip d.o.o.
  • Developed multiple microservices for the IoT platform using Java. Each one of them had hexagonal architecture, rich domain model (DDD), separated read and write flow using CQRS and ES and communication between them using the messaging via RabbitMQ.
  • Created reusable libraries using Java in order to ease the development of new microservices on the platform. Libraries were including domain seedwork classes, validation flow, and request processing flow.
  • Created the architecture for a functional testing project using a BDD approach with the Cucumber testing tool in order to introduce the usage of shared language that enhances the communication between the tech team and the management.
  • Implemented integration tests using TestContainers with dockerized SQL server database, Liquibase to apply the migration scripts and Database Rider on top of DBUnit to initialize and verify datasets after the execution of tested repository methods.
  • Extensively used Docker and Docker Compose in order to simplify the startup of each microservice of the platform and ease up the deployment process.
  • Wrote Jenkins Shared Library using Groovy to reuse the common Jenkinsfile pipes for the microservice build process.
  • Integrated multiple provider APIs on the anti-corruption layer of the hexagonal architecture in order to fetch the data from multiple endpoints and map them to a unified domain model.
Technologies: Jira, Git, Swagger, Agile Software Development, Redux, Integration Testing, Apache Maven, MockServer, Containers, DBUnit, REST Assured, Retrofit, AssertJ, Mockito, JUnit, Cucumber, Liquibase, JDBI, CQRS, Behavior-driven Development (BDD), Domain-driven Design (DDD), Docker, RabbitMQ, Groovy, Java

Full-stack Developer

2017 - 2019
Rockport VAL, LLC
  • Developed new application modules from scratch, including database table structures, stored procedure migrations, API layer interfaces and UI components and services using .NET Core, C#, Angular and TypeScript.
  • Used the ag-grid components extensively to display complex report structures.
  • Wrote Python tests to ensure the validity of the generated reports from the in-house analytics engine.
  • Configured AppVeyor to cache the libraries to improve the speed of branch building process.
  • Set up CI/CD pipeline from scratch on AWS EC2 machine using Jenkins.
  • Created multiple conversion tools to translate the data from other applications to the in-house application data structures using C# and .NET Core.
  • Led the technical interviews for the new potential team members.
Technologies: Jira, Git, Agile Software Development, PostgreSQL, Amazon EC2, ASP.NET, Jenkins, AppVeyor, Amazon Web Services (AWS), Redis, SQL, Python, AG Grid, JavaScript, AngularJS, TypeScript, Angular, ASP.NET Web API, .NET Core, .NET, C#

Freelance Front-end Developer

2017 - 2018
EvoBits Information Technology SRL
  • Worked on emerging the state management patterns, approaches, state structure, side effects control (using Redux and Ngrx/store with TypeScript).
  • Implemented lots of reusable controls, helpers, and abstractions for the Angular app using TypeScript; forms state included.
  • Used the combination of Vue CLI, TypeScript, Vuex and BootstrapVue to create two different multi-language administration dashboards from scratch.
  • Added multi-language support and Google charts to the legacy AngularJS application.
Technologies: Git, Redux, Vuex, React, NgRx/store, Angular CLI, TypeScript, Vue, AngularJS, Angular

Senior Software Developer | CTO (Startup Project)

2016 - 2017
Vicoinz, sp. z o.o.
  • Developed client and administration REST web API using ASP.NET Web API 2 and C#.
  • Created an application administrator module using AngularJS and Javascript.
  • Built an Azure configuration change listener to apply changes to all connected clients in real-time without affecting user experience and connected it to WPF client application using C#.
  • Wrote WPF UI automation tests using C# and TestStack.White library.
  • Created numerous unit and integration tests using C#, NUnit and Effort library.
  • Implemented real-time client-server communication using C# and SignalR library.
Technologies: Git, Integration Testing, ASP.NET, TeamCity, Bitbucket, CSS, HTML, jQuery, JavaScript, AngularJS, C#, SignalR, Windows Presentation Foundation (WPF), Azure, Web API, ASP.NET MVC

Software Engineer

2015 - 2016
Infobip d.o.o.
  • Maintained a legacy ASP.NET Web Forms application written in VB.NET.
  • Developed a custom logging system using C# and PostSharp library.
  • Wrote and optimized complex SQL server stored procedures using T-SQL syntax.
  • Built new web API features using C# and .NET Core while it was still in beta version.
  • Wrote Gulp scripts for application assets compilation, minification, and bundling with folder watchers using Javascript and multiple Javascript libraries.
Technologies: Jira, Git, Swagger, Agile Software Development, ASP.NET, Confluence, Stash, Jenkins, Gulp, CSS, HTML, jQuery, JavaScript, T-SQL (Transact-SQL), VB.NET, C#, ASP.NET Web Forms, ASP.NET MVC, .NET Core

Software Developer

2014 - 2015
Fokus infoprojekt d.o.o.
  • Developed and maintained large enterprise Windows Forms applications using C# and .NET 4.5.
  • Wrote complex statistical reports for customers using C#, Crystal Reports and Fast Reports tools.
  • Created a code generator tool which enables a developer to generate customized POCO, DAO, and stored procedures for all CRUD operations of the selected database tables.
  • Built custom Windows Forms controls for the special needs of a company.
  • Deployed multiple applications to the customer servers.
  • Communicated with clients to understand their needs in order to choose the right application architecture.
  • Extensively used DotNetBar components.
Technologies: Visual SourceSafe, Fast Reports, Crystal Reports, T-SQL (Transact-SQL), Windows Forms (WinForms), C#, .NET

Vicoinz

Developed a platform for online gaming tournaments. Users can register to enroll for the free tournaments or pay monthly subscription to participate in the pro tournaments. Tournaments are scheduled and all registered participants must check in on time in order to participate. Beside money, each player wins the certain amount of tournament points based on his ranking in the tournament. Tournament points are collected in order to win special awards at the end of each month.

SuperUser

An internal application to manage whole business process. Meetings scheduler, vacation organizer, finance processing, security permissions, manage users, teams, databases, and more.

Energo

An application used to calculate heath and water consumption per apartment. The data is imported to the application from .REP files, generated for each building. It's then processed by application, and based on recent calculations, a new CSV file is generated. It contains consumption per device for previous month which is further used to calculate amount of money each tenant is obliged to pay.

PREN CIL - INA

An application for central testing laboratory Zagreb—INA d.d.
The entire workflow, organization, management, and measurement is simplified by this application.

CIS (DMS)

A document management system with some extra features like messaging system, private calendar, user content sharing, document register, file versioning, and detailed statistical reports.

Integrated Hospital Information System (IHIS)

A multiple application system for a neuropsychiatric hospital. It helps with the patient hospitalization process, medical assessment, analysis, various calculations of hospitalization cost, and statistical reports.

Languages

TypeScript, HTML, CSS, C#, T-SQL (Transact-SQL), JavaScript, SQL, VB.NET, Groovy, Python, Java

Frameworks

Entity 6, ASP.NET MVC, ASP.NET, AngularJS, Bootstrap 3+, Angular, .NET Core, NUnit, Entity Framework Core, TestStack.White, Swagger, Bootstrap, JUnit, .NET, ASP.NET Web Forms, Windows Presentation Foundation (WPF), Redux, ASP.NET Web API, Mockito

Libraries/APIs

jQuery, REST APIs, NgRx/store, NgRx, React, SignalR, Vue, AutoMapper, MediatR, Vuex, Liquibase, AssertJ, Retrofit, JDBI, Windows Forms (WinForms), Web API, AG Grid, DBUnit

Tools

FastReport, Autofac, Microsoft Visual Studio, Ninject, TeamCity, Git, Jenkins, Jira, Confluence, Apache Maven, Cucumber, Docker Compose, Graylog, IntelliJ IDEA, Visual Studio, Visual SourceSafe, Gulp, Stash, Bitbucket, Angular CLI, RabbitMQ, REST Assured, Azure App Service, Azure DevOps Services, Azure Key Vault, Azure Logic Apps, Azure IoT Hub, Azure Machine Learning, Azure Information Protection (AIP), Azure Application Insights, Crystal Reports, Grafana, Vue CLI

Paradigms

CQRS, Unit Testing, Continuous Integration (CI), Agile Software Development, FluentValidation, Behavior-driven Development (BDD)

Platforms

Visual Studio Code (VS Code), Windows, Software Design Patterns, Docker, Amazon Web Services (AWS), Azure IaaS, Azure PaaS, Azure Functions, Azure, Amazon EC2

Other

Integration Testing, Repository Pattern, Batch Scripting, Vue Router, Power Shell Commands, IIS, Domain-driven Design (DDD), MockServer, Fast Reports, AppVeyor, Containers, Azure SaaS, Azure Virtual Machines, Azure Data Lake, log4j, Logback

Storage

Microsoft SQL Server, Azure Tables, PostgreSQL, Redis, Azure SQL Databases, Azure Active Directory, Azure Cosmos DB

2013 - 2017

Master's Degree in Information Technology

Zagreb University of Applied Sciences - Zagreb, Croatia

2010 - 2013

Bachelor's Degree in Electrical Engineering

Zagreb University of Applied Sciences - Zagreb, Croatia

OCTOBER 2020 - PRESENT

Azure Fundamentals

Microsoft

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