Goran Hacek, Developer in Varaždin, Croatia
Goran is available for hire
Hire Goran

Goran Hacek

Verified Expert  in Engineering

Embedded Systems Developer

Location
Varaždin, Croatia
Toptal Member Since
October 28, 2016

Goran is a software enthusiast with more than 10 years of experience in a diverse set of technologies: Java (10 years), C# (3 years), C/C++ (8 years), JavaScript (10+ years), and more. He has developed software and led teams developing the client (browser) side, server side, desktop, mobile, and embedded applications. He is a full-stack developer who is excellent at working both the back-end and front-end.

Portfolio

Rimac Automobili d.o.o.
Linux, Java, Lwip, CodeWarrior, Angular, CSS, JavaScript, HTML, MySQL, InfluxDB...
BoatBooker (Mare Conecto d.o.o.)
CSS, JavaScript, HTML, Reporting, Microsoft SQL Server...
NTH Mobile d.o.o.
PHP, CSS, JavaScript, HTML, Android, iOS

Experience

Availability

Part-time

Preferred Environment

Qt Creator, Eclipse

The most amazing...

...project I have worked on is an in-vehicle infotainment system for supercars.

Work Experience

Head of Software Development

2014 - 2017
Rimac Automobili d.o.o.
  • Worked on and was responsible for all non-embedded software activities in the company.
  • Established the In-Vehicle Infotainment and Machine-to-Machine Systems departments.
  • Worked on a large number of projects for different subsystems of different types of electric vehicles: cars, bikes, boats, wheelchairs, and more.
  • Led different types of teams that did the following work: embedded software, Linux OS, vehicle user interface, web and mobile app development, and UI/UX design.
  • Managed various multidisciplinary projects including mechanical, hardware, software and industrial design engineers, assembly, and manufacturing activities.
  • Developed one of the most advanced infotainment systems in the automotive industry. An IVI system with a rich function set: vehicle data logging, analysis and visualization, vehicle control, GSM, WiFi/Bluetooth connectivity, web browsing, GPS turn-by-turn navigation integration, audio/video library, FM/DAB radio, and HTML5 applications.
  • Built a secure real-time vehicle telemetry system, vehicle remote control protocols, remote vehicle software update, large scale data storage, real-time data analysis, web apps for data mining, live dashboards for vehicle tracking, mobile apps for vehicle status, and remote control.
  • Developed a CAN bus-based booting protocol and development tools for vehicle ECUs.
  • Worked on the vehicle communication framework for CCS fast charging stations based on the lwIP IPv6 networking stack.
  • Managed resources and projects: product development, contract negotiations, strategic planning, recruitment, and lectures.
Technologies: Linux, Java, Lwip, CodeWarrior, Angular, CSS, JavaScript, HTML, MySQL, InfluxDB, OpenTSDB, Spring, iOS, Android, Qt Quick, Qt, C++

Chief Software Architect

2012 - 2014
BoatBooker (Mare Conecto d.o.o.)
  • Led a team of 13 developers on the development of a large scale web application.
  • Performed large scale refactoring of a legacy application.
  • Designed the enterprise architecture based on inversion of the control and unit of work patterns with elements of aspect-oriented programming.
  • Implemented the integration with multiple credit card payment systems with secure on-site credit card number storage.
  • Implemented the integration with multiple booking systems for data synchronization and exchange.
  • Implemented the continues integration system with automatic one-click deployment procedures for both staging and production environments.
  • Extended the Entity Framework with features to improve developer productivity, to simplify query writing, and to better performance.
  • Developed and integrated monitoring tools to help diagnose and resolve issues.
  • Worked on developing procedures for internal processes: feature specification, software development, software testing, and technical support.
  • Managed resources and projects; including actively recruiting the best talent.
Technologies: CSS, JavaScript, HTML, Reporting, Microsoft SQL Server, Windows Forms (WinForms), MSMQ, PostSharp, Ninject, Entity Framework, ASP.NET, C#

Software Developer

2011 - 2012
NTH Mobile d.o.o.
  • Developed native and HTML5 applications for iOS.
  • Built controls for the company's internal iOS framework.
  • Created a system for the application OTA (over-the-air) delivery to clients.
Technologies: PHP, CSS, JavaScript, HTML, Android, iOS

Software Architect

2008 - 2011
Bumblehood Ltd. (Bombus d.d.)
  • Coordinated the development of the custom card terminal device with the external hardware producer.
  • Led the development of embedded software for the custom card terminal device.
  • Built and led the development of desktop applications for data synchronization from USB devices (cards and card terminals) with a remote server.
  • Developed a security model for data protection on cards with mixed open and protected storage (USB Mass Storage in combination with MIFARE NFC chips).
  • Built modules of a customer loyalty web application.
  • Developed modules for a WYSIWYG browser based content editor.
  • Created tools for data visualization and analyzing the state of a large-content base.
  • Worked in an international team with English as the primary language.
Technologies: PIC16, Storage, USB, Win32, C++, Swing, HTML, CSS, JavaScript, MySQL, ActiveMQ, Tapestry, Hibernate, Spring, Java

Patent: Secure Loyalty Card System

http://www.ipo.gov.uk/p-ipsum/Case/ApplicationNumber/GB1108567.7
This invention provides a data card for use in a consumer reward or loyalty incentive program, wherein the card comprises an input for receiving loyalty/security data.

It also secures it in an innovative way. There is a data card reader, server, and method of authenticating the data on the data card using digital cryptographic techniques—so that the data card is still fully readable and writable at an insecure location, but protected so that a hostile cardholder cannot insert or modify the data to compromise the integrity of the card, nor duplicate the data to reuse it for his own benefit.

Visualization of the Bumblehood.com Site Interlinking

https://www.flickr.com/photos/ghacek/albums/72157622452629410
The Bumblehood content team needed a way to analyze the state of their page interlinking condition in the ever-growing content of travel guides. This tool was devised to allow them to find isolated page islands and to continuously improve their page interlinking quality.

ClassDojo | React Native Prototype in an Existing Application

https://www.classdojo.com/
ClassDojo was interested in migrating their Android application from native to React Native. I created a prototype that replaced one of the key fragments with react implementation. This work showed that porting can be done in phases by rewriting parts of the application at the time.

Languages

HTML5, HTML, Java, JavaScript, C++, C#, PHP, CSS, SQL, C, Bash

Frameworks

Vanilla JS, Spring, Qt, Qt Quick, ASP.NET, Tapestry, Angular, Entity, React Native, Boost, Hibernate, Swing

Tools

Qt Creator, Eclipse IDE, PostSharp, MQTT, ActiveMQ, Apache Tomcat, Ninject, ANTLR, CodeWarrior, Subversion (SVN), Git

Paradigms

Compiler Design, Design Patterns

Platforms

Linux, Eclipse, Win32, Windows, iOS, Android

Other

Encryption, MSMQ, Reporting, USB, Storage, PIC16, Embedded Systems, HTTP, TCP/IP, Transmission Control Protocol (TCP), OpenTSDB

Libraries/APIs

Lwip, Entity Framework, Windows Forms (WinForms), jQuery, Google Chart API, React, Google Maps SDK, Win32 API, Standard Template Library (STL)

Storage

Microsoft SQL Server, Google Cloud, PostgreSQL, InfluxDB, MySQL

2009 - 2011

Master's Degree in Computer Science

University of Zagreb, Faculty of Electrical Engineering and Computing - Zagreb, Croatia

2005 - 2009

Bachelor's Degree in Computer Science

University of Zagreb, Faculty of Electrical Engineering and Computing - Zagreb, Croatia

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