Started coding at age 11 and doing it ever since. Ventured into business and corporate management for ten years. With insights from both worlds, I'm back doing what I truly love - designing and coding software.
My favourite foods are algorithms, challenging problems and cool new technologies. I'm also an avid gamer and fantasy/sci-fi fan.
Designed, coded and put into production a wide variety of projects, from small to large. See Notable Projects for some of them. Some of the larger ones required quite complex software architectures to support the requirements and scale. To create them, I've used client-server, p2p, multitier, fail safe, asynchronous, parallel, event sourcing, microservices and other paradigms.
I love seeing projects completed and actually used by people, so I focus on quick prototypes and small iterations.
Being my favorite, I've had fun with everything from language parsers/interpreters to AI agents. I love programming competitions and have participated in and organized quite a few.
During high school, I've won two IOI medals. Occasionally I still do online competitions and solve programming problems for fun.
Currently using mostly Web/Azure/Windows. Also worked with Linux, Android, iOS.
Business skills I picked up during my 10+ years in top management positions. I supervised and managed development and implementation of complete business solutions for some of the largest private companies and institutions in the country. I subscribe to principles of agile software development.
A software development company that is basically me. I do contract software development and IT consulting work. My trusted partners often join in as experts in their fields to meet specific project needs.
In my spare time, I'm dabbling in new technologies, having fun with experimental projects (often gaming-related) and problem-solving competitions.
During two years I developed a distributed, heterogeneous, cloud-based Customer loyalty solution for undisclosed client.
As a hiatus from business I developed three game related projects:
Sharp Minds - a mobile puzzle game for iOS and Android
Warlords RTS - a mobile strategy game for iOS and Android
WoWuction - an online BI tool for World of Warcraft economy
Omega software d.o.o. (www.omega-software.eu) is an ISV with several B2B and B2G products and many custom solutions developed for private and government clients over the years. During my time, company was transformed into service-based business, revenue has grown twenty-fold, making the company one of the leaders in software solutions for the government in the country. We implemented many organizational innovations including EVM project management, Net Promoter Score satisfaction measurement, ISO 9001 and ISO 27001 standards, mentorship system for new employees, regular presentations of new employee ideas, powerful candidate screening process and many more organizational innovations and experiments. Omega received multiple employee satisfaction rewards during this period. A very tight and effective executive team managed daily operations and drove the company forward. Working with this team was the best teamwork experience of my life.
In 2011, I withdrew from all active positions in the company to pursue personal projects and move back from management to my foremost passion: software development. In the years since, Omega continues to grow and prosper and I remain a shareholder and occasional consultant.
My role in the company: CEO; managing day to day operations, providing strategic direction and initiating change
IT start-up with primary development focus on UltiCAD - a software for 3D presentation and manufacturing of furniture for small businesses. UltiCAD featured DSL design with custom script language used to declaratively describe visual and manufacturing properties of objects. We've grown to 7 talented employees and made UltiCAD first widespread Croatian product of the kind. As a side project UltiTech developed MMO game Dominance, The Throne of Elders dubbed the first Croatian MMO game.
In 2003, UltiTech, its products, IP and staff merged with Omega Software d.o.o.
Association "Genesis" had a mission to connect, educate and promote gifted children with interests for IT. Over the years, we organized many courses, summer camps, competitions and sponsored numerous projects. Quite a few notable IOI (International Olympiad in Informatics) medallists were members and participants in our activities. During this, time I taught numerous courses on programming, algorithms and problem solving.
During high school, I was contracted by "Školska Knjiga" (at the time largest Croatian book publisher) to developed Educational software (1992). I worked on three of them as sole developer. They were published and became my first professional development work.
A contracted software solution for undisclosed client aimed at tracking and rewarding loyalty of their customers. Solution is distributed and consists of many modules; data and back-office resides in Microsoft Azure cloud with servers locally present at multiple locations in order to be able to synchronize with on-site third-party software and hardware. Custom MIFARE card reader/touch screen was developed (by a partner) and integrated with solution via TCP. Solution also integrates with receipt printers, ID and barcode scanners and kiosks. A custom daily game for customers was developed for the project. Solution is built using C#, ASP.NET Core, Cloud SQL, HTML5, Angular, Unity3D (for the game), It features integration with financial system, BI reports & analysis, integration with transactional system, centralized logging system, auto-diagnostics and alerting module, UI application over TCP for touch screen and custom security extensions for devices that are part of the system. Solution is currently in production and processes tens of thousands of records per hour.
A numbers puzzle mobile game for iOS and Android. Built in Unity3D/C#. It features 400 puzzle levels of increasing complexity and difficulty. Levels have been tested and chosen by AI from a large pool of randomly generated levels to ensure optimal difficulty and solvability. Game doesn't feature any form of monetization (you can read my criticism on monetization focus of indie scene in my Gamasutra featured blog post: Don't monetize your games). Following release, I used a lot of analytics to fine tune levels (also a featured post: How to tame your analytics). Game holds a high rating average and has been downloaded more than 25.000 times. More info at Sharp Minds home
A retro style 2D mobile strategy game for iOS and Android. The game was designed and built in 12 months using Unity3D/C#. It features level/unit design tooling (for internal use), random generated loot/items, combat system with multiple unit attributes and damage types, spells, timed effects, upgradeable heroes and units, etc. One of the most challenging aspects of the game was development of pathfinding + steering algorithms which work well in actual scenarios used in the game. It has more than 130.000 total installs to date.
Available at www.wowuction.com, WoWuction is an online analytics tool for helping players earn in-game currency on World of Warcraft auction houses. WoW features a highly rich and complex economy system (mostly driven by player trading on auction houses). At its peak, it had more than 12 million players spread across 500 servers. Each server had two auction houses which listed from 10.000 to 80.000 entries at any given time. WoWuction takes these 50 million entries snapshot each hour (via exposed Blizzard API), processes them and stores them in database in several aggregated forms. All this enables a very detailed analysis of item quantity and price averages, trends and totals. It provides insights into server specific vs global economy, specific sellers activities and is able to advise on which products are profitable to produce via professions. It also features data exporting and e-mail notifications based on user criteria for specific items/prices.
A DDD technology for developing business applications. In Omega, it was essential to be able to produce and iterate software fast with as few bugs or feature breaks possible. Incredibly talented colleague (Bojan Antolović) proposed that we create declarative platform for the purpose which would drastically shift the paradigm of how we develop/modify software. I liked the idea very much, so I sponsored and oversaw development of this experimental project which then became and is ever since an essential building block for most company projects. I even did a little bit of coding for it :)
Rhetos was later open sourced and is available at rhetos.org.
Turn based fantasy strategy MMO with focus on social interaction and diplomacy. In a unique setting and backstory, players had to organize into hierarchical alliances and coordinate their attack and spellcasting vs enemy players. I created the initial setting, game design and server code. Later, the team expanded and colleagues took charge of the coding, while I focused on managing the project to its completion. It featured concurrent connections, client-server syncing, live chat, in-game messaging system, etc. Server was written in C++/SQL, with 'fat' client in C++. The game ran for several 'seasons' and had several hundreds of devoted players and fans from all over the world. It was shut down because it didn't have any business direction (mostly my fault). Fan base still exists to date and there were two known attempts to reboot the game (latest being dominance-online.com)
A software aimed at 3D visualization and manufacturing of custom made furniture. It required highly parameterized objects which could be adjusted to clients' needs, yet still retain all necessary information to extract manufacturing elements and plans from it. To meet this requirement, I designed a DSL (domain specific language) which was then used to model all furniture elements. It also featured several manufacturing optimization algorithms. For years the software has been widely used in Croatia by furniture stores and small manufacturers. I wrote the initial codebase in C++ utilizing DirectX for visualization.
Contracted by the book publisher "Školska Knjiga" to code three educational games for elementary school students. Games/software was designed by reputable education experts and I was the programmer. All three software products were made in C++ and have been published in a package with 5.25" disks (ha-ha), making them my first professional programming work.
Developed several rating and matchmaking tools for games and sports (using Elo, Glicko and TrueSkill algorithms), some of which are still used today by local communities. Implemented language parsers as well as a few interpreted script languages. Developed AIs using numerous AI and heuristics algorithms as a hobby (chess, four-in-a-row, Sharp Minds, etc.) Participated in AI competitions (latest being CodingGame profile, great site btw!).
Participated in organization, problem design and official committees in multiple programming competitions.
Attended Faculty of Science, Department of Mathematics (University of Zagreb) for two years and dropped out.
Awarded State Award for Technical Culture "Faust Vrančić".
Won silver medal in International Olympiad in Informatics in Sweden.
Won bronze medal in International Olympiad in Informatics in Argentina. This was also the first IOI medal won by Croatia.