Mario Smolčić, Software Developer in Sisak, Croatia
Mario Smolčić

Software Developer in Sisak, Croatia

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. His 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.
Mario is now available for hire

Portfolio

Experience

Location

Sisak, Croatia

Availability

Part-time

Preferred Environment

Git, Visual Studio Code, Visual Studio, Windows

The most amazing...

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

Employment

  • 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, 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, 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, Windows Forms, C#, .NET

Experience

  • 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.

Skills

  • Languages

    TypeScript, HTML, CSS, C#, T-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, Web API, Ag-Grid, DBUnit
  • Tools

    FastReport, Autofac, Microsoft Visual Studio, Ninject, TeamCity, Git, Jenkins, Jira, Confluence, 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, 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

Education

  • Master's Degree in Information Technology
    2013 - 2017
    Zagreb University of Applied Sciences - Zagreb, Croatia
  • Bachelor's Degree in Electrical Engineering
    2010 - 2013
    Zagreb University of Applied Sciences - Zagreb, Croatia

Certifications

  • Azure Fundamentals
    OCTOBER 2020 - PRESENT
    Microsoft

To view more profiles

Join Toptal
Share it with others