Ondrej Hirjak, Software Engineering Developer in Bratislava, Slovakia
Ondrej Hirjak

Software Engineering Developer in Bratislava, Slovakia

Member since September 21, 2018
Ondrej is a software architect, senior software engineer, and IT consultant with over 15 years of experience in shipping numerous and varied projects—ranging from low-level kernel drivers and GPU computations to high-speed peer-to-peer networks and enterprise banking and gaming apps. Currently, Ondrej is focusing on high-level architecture and design and thrives on projects where he takes ownership and delivers the project from start to finish.
Ondrej is now available for hire

Portfolio

Experience

Location

Bratislava, Slovakia

Availability

Part-time

Preferred Environment

macOS, Linux

The most amazing...

...project I've worked on is a complex casino system serving hundreds of thousands players around the globe and running on thousands of machines.

Employment

  • Software Architect | Senior Software Engineer | IT Consultant

    2012 - 2018
    Vnet-Services GesmbH
    • Implemented the player-management-and-tracking module of a casino management system.
    • Designed, implemented, and operated a jackpot module for a casino management system.
    • Installed a new communication layer between the slot machines and casino system.
    • Consulted, developed and supported deployment and operation of a casino management system in many countries for many customers.
    • Co-designed homegrown tools for deployment and configuration management.
    • Led the development of a new ATM-like machine for a casino environment.
    • Managed the development and integration of custom HW modules in a casino environment.
    • Analyzed and prototyped new features and integrations for a casino management system.
    Technologies: Java, C++, Qt, Protobuf, Oracle, PostgreSQL, Ansible
  • Software Architect

    2011 - 2011
    Unicorn Systems s.r.o.
    • Defined software architecture and developed internet banking for Tatra Banka.
    • Designed and implemented the graphing component for internet banking.
    Technologies: Java, Flex, Flash
  • Senior Software Engineer

    2009 - 2011
    Tempest a.s.
    • Designed and implemented parts of an enforcement module in an electronic toll collection system in Slovakia.
    • Oversaw the component testing in an electronic toll collection system in Slovakia.
    Technologies: Java, MySQL, Windows, Linux
  • PhD Student, Teaching Assistant

    2009 - 2010
    Slovak University of Technology, Faculty of Informatics and Information Technologies
    • Worked on a real-time ray-tracer on GPU.
    • Supervised students with their bachelor's theses.
    Technologies: C++, GPGPU, CUDA
  • Software Engineer Intern

    2008 - 2008
    NVIDIA
    • Developed low-level Linux driver for NVIDIA graphics cards.
    • Helped implement cutting-edge features for the Quadro product line.
    Technologies: C, X11, OpenGL, Linux
  • Software Engineer

    2006 - 2008
    Tempest a.s.
    • Worked on high-speed peer-to-peer network developed for Cisco.
    • Implemented various low-level modules.
    • Worked on integration layers between high-level components written in Java and low-level components written in C.
    Technologies: Java, C, Linux
  • Software Engineer

    2005 - 2006
    Digital Systems s.r.o.
    • Designed and implemented reconciliation software for ING bank.
    • Built a SWIFT system for banking sector.
    • Developed the back-end for T-Com Games T-Station.
    Technologies: C#, ASP.NET, Microsoft SQL Server, Java, MySQL, Oracle, C++, Linux
  • Software Engineer

    2004 - 2005
    Isotoxin Industries s.r.o.
    • Implemented various games using the Cipher Engine.
    • Created our own Radiant-like game editor.
    • Designed and implemented a parking lot utilization management server.
    Technologies: C++, OpenGL, Cipher Engine, MySQL, Linux

Experience

  • Casino Management System (Development)

    For seven years, I've worked on various parts of a complex casino management system codenamed TBO. The system is successfully serving hundreds of thousands of players around the globe and running on thousands of machines.

    WORK DONE
    • Implemented player management and tracking module.
    • Designed, implemented, and operated a distributed jackpot module.
    • Developed a new communication layer between slot machines and casino system.
    • Consulted, developed and supported deployment and operation of a casino system for a number of clients all around the world.
    • Co-designed homegrown tools for deployment and configuration management.
    • Led the development and integration of custom HW embedded modules in a casino environment, most notably the "SAS over IP" custom SMIB (slot machine interface board).
    • Analyzed and prototyped new features and integrations of a casino management system.

    Technologies: Java, Spring, C++, Qt, Protobuf, Oracle, PostgreSQL, Ansible

  • CashBox (Development)

    For CashBox, I led the development of custom ATM-like machine for casinos environment.

    WORK DONE
    • Analyzed and designed the solution.
    • Oversaw the development of the front- and back-end of the server and embedded HW integration part.
    • Set up the deployment and supported the operation.

    Technologies: Java, Dropwizard, C++, Qt, Protobuf, PostgreSQL, Ansible

  • Tatra Bank Internet Banking (Development)

    While working for Unicorn Systems, I developed various parts of internet banking for the Slovakian bank, Tatra Bank. Most notably, I designed and implemented the graph components for the front end.

    Technologies: Flex, Flash, Java

  • Graphics and GPU Programming (Other amazing things)
    https://hirjak.io

    During my PhD studies, I implemented a basic real-time raytracing engine. Before that, during my university studies, I implemented real-time fluid simulation on GPU.

    Technologies: C++, GPGPU, CUDA

  • NVIDIA GPU Linux Kernel Driver (Development)

    While interning at NVIDIA, I developed new features and implemented bugfixes for a low-level Linux driver for their graphics cards.

    Technologies: C, X11, OpenGL, Linux

  • High-speed Peer-to-peer Network (Development)

    Being a part of an extremely capable team of people, I worked on a high-speed peer-to-peer network developed for Cisco called Topos. I implemented various low-level modules and worked on integration layers between high-level components (written in Java) and low-level components (written in C).

    Technologies: Java, C, Linux

  • Recopay (Development)

    In the process of migrating from old technologies, I also analyzed an old MS Access-based solution and implemented new reconciliation software for ING bank.

    Technologies: C#, ASP.NET, Microsoft SQL

  • Parking Lot Utilization Management Server (Development)

    As a part of a complex parking solution for the city of Martin, I designed and developed a parking lot utilization management server.

    Technologies: C++, MySQL, Linux

  • Cipher Engine Games and PhaseONE Level Editor (Development)

    I've also developed various games based on the Cipher Engine. For level editing, I created my own Radiant-like level editor named PhaseONE.

    Technologies: Cipher Engine, C++, OpenGL

Skills

  • Languages

    Java, C, C++, SQL, Bash, C#, UML, JavaScript, Python, Scala, Kotlin, XML, Assembler
  • Tools

    Git, SourceTree, Jira, Confluence, Subversion (SVN), Maven, Ansible, IntelliJ IDEA, Flash, Perforce, Qt Creator
  • Other

    Software Engineering, TCP/IP, Analysis, Consulting, Prototyping, Software Architecture, Software Design, Solution Architecture, Design, Device Drivers, Team Leadership, Integration, Game Development, Game Engine Programming, SOAP
  • Libraries/APIs

    MyBatis, Protobuf, OpenGL, jQuery
  • Paradigms

    DevOps, Agile Software Development, Scrum, Kanban, Object-oriented Programming (OOP), Functional Programming, GPGPU
  • Platforms

    Linux, MS-DOS, Windows, Android, Azure, Embedded Linux, Docker
  • Frameworks

    Flex, Spring, Dropwizard, Qt, .NET
  • Storage

    MySQL, Microsoft SQL Server, PostgreSQL, Oracle DBMS

Education

  • PhD (unfinished) degree in Software Engineering
    2009 - 2010
    Slovak University of Technology - Bratislava, Slovakia
  • Master's degree in Software Engineering
    2006 - 2008
    Slovak University of Technology - Bratislava, Slovakia
  • Bachelor's degree in Software Engineering
    2002 - 2006
    Slovak University of Technology - Bratislava, Slovakia

To view more profiles

Join Toptal
I really like this profile
Share it with others