Ranko Orlić, passionate about software


Personal Data


           Name:  Ranko Orlić

         Lives in:  Haacht, Belgium

             Born:  1967 @ Rijeka (Croatia)

      Linked-in:  www.linkedin.com/in/rorlic

     Education:  University, Master degree in Computer Science @ VUB

   Languages:  Dutch and Croatian natively,
English thoroughly, 
German and French moderately.


Professional Objective

I’m a communicative, creative, energetic, responsible & customer- and goal-oriented senior software engineer/architect and problem-solver.

I enjoy developing software products as a team-member or a team-leader.

A dynamic and professional environment with a clear mission, vision and focus brings out the best in me.

Technological Knowledge

Profound knowledge of many areas in computer science both theoretically and practically.

Expert in OO development, C# (as of 1.x), C++, SOA & micro-services architecture, Git and .NET (incl. core 3.x).

Knowledgeable in many other areas like Scrum, Kanban, XML, JDF, Docker, Linux, Python, PowerShell, angular 2+, nodeJS & npm, web-components with stencil & polymer, etc.

Experienced in areas like Printing, Clinical Trials, Energy, TV business, etc.

Basic knowledge of technologies like drupal, php, composer, mysql/mariaDB, etc. (please do not contact me for these J)

Working Experience

2019-2021  Lead Software Engineer @ Eneco (Mechelen) on behalf of Aquila Solutions (Haacht) – Energy – Design, implement, deploy and maintain a web-based system (angular 8 + .net core 3.1 + SQL server) for capturing contract data and handling customer acquisition.

2019-2019  DevOps Engineer @ Galapagos (Mechelen) on behalf of Aquila Solutions (Haacht) – Biotechnology – Maintain legacy applications (PHP + oracle) and develop new applications and tools.

2018-2019  Lead Software Engineer @ UCB (Anderlecht) on behalf of Cegeka (Leuven) – Pharmaceuticals – Architecture, design, implement and deploy a public facing website-based system (web-components using polymer & stencil + .net core 2.1 + SQL server) informing patients on one specific disease and offering some additional services

2017-2018  Senior Software Engineer @ UCB (Anderlecht) on behalf of Cegeka (Leuven) – Pharmaceuticals – Architecture, design, implement and deploy a system (angular 6 + .net core 2.1 + MediatR + SQL server) for helping conduct studies in a hospital

2017-2017  Senior Software Engineer @ OZ (Brugge) on behalf of Cegeka (Leuven) – Hospital & Health Care – Help out with creating a public-facing website (angular 2 + .net 4.x + SQL server)

2016-2017  Senior Software Engineer @ Eneco (Mechelen) on behalf of Cegeka (Leuven) – Energy – Create a Central Market System connector (.net 4.x + NServiceBus + SQL server) translating and enriching MIG4 to MIG6 messages, allowing to connect Eneco’s backend systems to the central energy-market hub

2016-2016  Senior Software Engineer @ SD Worx (Antwerp) on behalf of Cegeka (Leuven) – HR  – Rewrite existing application for preparing pay-check calculation into a web-based .net system

2015-2016  Senior Software Engineer @ Kapsch CarrierCom BE (Zaventem) on behalf of Aquila Solutions (Haacht) – Computer Software – Develop and maintain a backend system for managing all aspects of public transport

2014-2015  Consultant / Coach @ Optimco (Antwerp) on behalf of InfoSupport (Mechelen) – Insurance – Coach an AS400 developer to use .NET / C# for enterprise development
The customer is a small insurance company, mainly providing end-user insurances. I’m working as a software development coach, supporting the company in the transition of AS400 to .NET development, focusing on C# development from analysis to deployment, using scrum as the development process.

2012-2015  Senior Software Engineer @ Engie / Electrabel (Brussels) on behalf of InfoSupport (Mechelen) – Renewables & Environment – Design and develop several systems related to capturing and communicating unavailability events and production constraints
The customer is a provider of gas and electricity. I’m working as a senior software engineer developing three systems which are part of a platform that optimizes the energy production park. All systems are developed using .NET 3.5 – 4.0 technology, following a scrum development process, are fully unit-tested and have a SOA architecture. Two systems handle the entry and consolidation of unavailability information of the production park respectively the entry and consolidation of constraints and contracts that influence the availability of the production park. A third system is a messaging hub, providing store, convert and send services to the other two systems as well as many other 3rd party systems using various channels (WCF, email, drop folders, web-sites, etc). A fourth system is mainly a central store & forwarding system capturing a variety of source data related to the optimization of power and providing a uniform way of re-distributing that information. In addition, the system calculates derived data, such as pricing information according to the business rules.

2011-2012  Software Coach @ Galapagos (Mechelen) on behalf of InfoSupport (Mechelen) – Biotechnology – Train and guide a team to build various .net systems
The customer is a clinical stage biotech company focused on R&D of medicines. I’m working as a software development coach, supporting the company in the analysis, development and implementation of a new system for tracking orders. In addition, I am helping the team to move to the .NET platform.

2011-2012  Trainer @ InfoSupport (Mechelen) on behalf of Aquila Solutions (Haacht) – Information Technology and Services – Class-room trainings for small to medium teams (up to 20 people)
The customer is an IT provider, offering training in various IT areas to their customers. I’m working as a free-lance trainer, mainly doing language-related courses for OO languages like C#, Java & C++. In addition, I also give trainings related to the .NET environment.

2010-2011  Software Design & Documentation Engineer @ Unithink (Niel) on behalf of Aquila Solutions (Haacht) – Information Technology and Services for BioPharma – Develop and maintain a system for managing clinical trials
The customer is a eClinical software vendor offering a SaaS solution for conducting clinical trials. Their solution needs further development and maintenance. I’m supporting the product development & management services, providing guidance and support to R&D team members and management on sound software engineering practices in the Software Development Life Cycle (SDLC) and own the entire technical documentation and developmental testing frameworks.

2010-2019  Consultant, IT helpdesk and Full-stack Developer @ ABR (Halle) on behalf of Aquila Solutions (Haacht) — Automotive – Create & maintain a website and provide general IT support
The customer is a small company that sells cars. I have created a basic static website and a simple inquiry form. They also need occasional IT support.

2009-2010  Product Responsible @ eventIS BV / SeaChange (Eindhoven, NL) – Information Technology and Services for Broadcast Media – Develop and maintain a back-end product for managing TV schedules
StagIS-EE is an Electronic Programming Guide (EPG) back-end system used in a linear broadcasting, Video-On-Demand and IPTV environments. I'm overall responsible for the development and maintenance of this system, which provides support for ingesting, editing, aggregating, transforming and publishing TV schedules. Besides being overall responsible for the system, as part of a small team, I'm fulfilling various other roles like team-lead, coach and mentor, designer, developer, build-master and others. The system is based on .NET 3.5, using C#, WCF, XML and ASP.NET. End of 2009, the 2-year old product was facing many challenges, performance and maintainability being the main ones: the product performed very poorly and the team could not keep up with the found bug rate. In just a couple of months the team and I managed to analyze and re-architect the product, optimize the development, introduce OO concepts and re-design for scalability. The product now performs 20 to 60 times faster than the original product line, being most likely the fastest in our business. In addition, the product code is reduced by at least 75%, the amount of bugs is reduced to 50% and the team now focuses on new features.

2007-2009  Team Lead & Senior Software Engineer @ XiTechnix (Geel) on behalf of BioPharma Technology House (Geel) – Hospital & Health Care – Analysis, design & implementation of SMS
Study Management System is a SPEc like system. I'm responsible overall for the development of this system, which provides for basic project management, document management and various laboratory specific functionality. As part of a small team, I'm fulfilling various roles like team and project leader, coach and mentor, architect, designer, developer, build-master and others. The system is based on SharePoint 2007, using C#, WF and ASP.NET.

2005-2007  Team Lead & Senior Software Engineer @ Johnson & Johnson (Beerse) on behalf of BioPharma Technology House (Geel) – Hospital & Health Care – Architect, prototype, design and implementation projects for pharmaceutical companies
SPEc is a Studies, Projects and Experiments departmental control system. Based on a standard product by Siemens, I'm responsible for the development of add-on applications that extend this standard product with document management and laboratory automation. As part of a small team, I'm fulfilling various roles like team and project leader, coach and mentor, architect, designer, developer, build-master and others. The add-ons are based on .NET 2.0, using C# and built on a 3-tier architecture using WinForms, Web Services and using Oracle as a back-end.

2004-2005  Team Lead & Senior Software Engineer @ Techwin Software (Mechelen) – Information Technology and Services for Manufacturing – Maintain a planning system for building exterior joinery (doors & windows)
JoPPS is a production-planning product for creating windows, doors and other constructions based on profiles. I was involved with analyzing, designing in UML & implementing in Delphi Pascal. In addition, I've lead the team of 6 (internal and external) software engineers and managed both the existing product and the newly created product. When I joined, the fairly new team was working a bit adrift on a porting project, without any concrete plan, methodology or leadership. Both management and our biggest customer were concerned, as they could not see any progress or concrete deliverables. This was due to the team’s focus on the development of a persistent layer and some business objects, and the conversion of existing data. The team itself was also concerned as they were developing components outside of their context without a clear focus or vision. About 5 weeks after joining, I’ve taken over the project management, introduced and implemented eXtreme Programming, joined the team as a developer and shifted focus on functionality instead of components.

2003-2004  Senior Software Engineer @ Creo Europe SA (Turnhout) – Information Technology and Services for Printing – Next Generation Production Planning Product (NG-PPP) & Integration Component for Preps
The NG-PPP is a production planning product, connecting printing ERP’s with pre-press, press and post-press software. I was involved with designing in UML, prototyping in Java & implementing in C#. In addition, I designed & implemented (in C#) a (partially graphical) component for integrating Preps with this next-generation production-planning product. The production planning process for commercial printing work is a complex process, requiring many discrete steps where each step allows many possible ways to produce the partial product. Unfortunately, typically there is no unique, most optimal production plan. The optimum depends on many factors that cannot be seen in isolation. Where-as UpFront leaves it up to the user to decide/select this optimum, the NG-PPP attempts to calculate/suggest these optima based on a product description and knowledge of printing processes and equipment. As part of the overall algorithm, a sheet-optimization algorithm needed to be developed. Sheet-optimization in print-production is complicated because typically it needs to be guillotine cut-able and paper-grain needs to be taken into account. I’ve researched algorithms in other industries such as steel cutting and related the problem to the 2D-bin-packing problem. The visualization of the algorithm prototype proved that the sheet-usage was optimal, except for extremely small products.

2002-2003  Engineering Project Manager @ ScenicSoft Europe NV (Turnhout) – Information Technology and Services for Printing – Maintenance and enhancement of UpFront v1.x & v2.x
UpFront is a print-production planning tool, developed in Visual Basic and persisting data into a MS Access database. It allows creating reusable printing layouts that simplify the creation of print-production plans and minimizes the error-rate by ensuring manufacturability. For this product, I fulfilled the roles of engineering (technical) project manager and principal software engineer. UpFront consist of 2 applications: a Planner and a Job Builder. UpFront Planner simplifies the production planning of printing products by allowing the production planner to create templates (both with and without dimensions) containing all required details for producing a printed product. UpFront Job Builder allows the user quickly creating new jobs based on the production plans. When I inherited UpFront, it was in a very bad state: it contained many bugs, required many features and no knowledge-transfer was done to my team. I started by analyzing the architecture and the design, after which I had each team-member (including myself) look into the design details as part of fixing sets of related bugs. In time, when we were more familiar with the code, we started adding new features while continuously improving the product stability (we moved from DAO to ADO, removed global variables, refactored parts, etc.). When we released UpFront 2.0, not only did we succeed in creating a feature-rich robust application, but we also delivery this quality build one week ahead of schedule.

2000-2002  Engineering Project Manager & Principal Software Engineer @ ScenicSoft Europe NV (Turnhout) – Information Technology and Services for Printing – Maintenance and enhancement of Trapwise v3.x
Trapwise is a standalone trapping solution. It is a graphical, multi-platform (Mac & Win) C/C++ application consisting of a configurable postscript interpreter, a PDF library, a trapping engine and lots of code to manage all trapping details. I was involved in fixing bugs, adding new features and leading a 5-person team. TrapWise needed extending with special (opaque-color) trapping rules. Because the code had been maintained by at least 5 previous companies, the actual trapping engine was highly optimized but at the same time very complex and loosely structured. I’ve analyzed the structure, rewrote and documented the code while adding the opaque trapping rules. This resulted in documented and maintainable code that is even slightly faster than the original.

2000-2000  Principal Software Engineer @ ScenicSoft Europe NV (Zaventem) – Information Technology and Services for Printing – Architecture, design, implementation of the licensing mechanism for all ScenicSoft products
The licensing component is a set of C++ components embedded in all SSI products and the password creation application. This one-man project required me to handle all software engineering stages. When ScenicSoft acquired a few companies and increased its portfolio to 5 products, the existing system for creating passwords and using licenses turned out to be insufficient. These products were all based on different technologies and implemented using different programming languages (Pascal, C/C++, Java, Visual Basic, etc.). In addition, the company was not ready to use the newer hardware dongles. I’ve analyzed the existing structure and proposed changes to the business processes required to use the new hardware and create passwords. Based on that I’ve created a core component shared by all products and individual wrappers for each language (JNI, COM, C, etc.). Finally, I’ve created documents for both technical and non-technical users. This resulted in a licensing mechanism still in use today (even after the acquisition).

1998-2000  Principal Software Engineer @ ScenicSoft Inc. (Seattle, USA) – Information Technology and Services for Printing – Architecture and design of Pandora v1.x
Pandora is an imposition product for the packaging industry. It allows to snap artwork onto a die and to step-and-repeat to create easy and fast impositions. My contribution to the team was mainly analysis, architecture and prototyping. Once the initial part of the project was done I moved towards the creation of a new and improved licensing for all ScenicSoft products. Pandora is a graphical java (Swing) application using a few C++ algorithms thru JNI. It is available on Windows, classic Mac and MacOS X.

1997-1998  Senior Software Engineer @ Agfa-Gevaert NV (Antwerp) – Printing – Design and implementation of Apogee Pilot v1.0
The Apogee Pilot system provides a PDF based workflow for the pre-press industry. It is an integration project requiring a tight integration with a few 3rd party components. As part of a larger team I was responsible for the general design of the system, coordination of imposition related issues, development of support code and integration testing.

1997-1997  Senior Software Engineer @ Agfa-Gevaert NV (Antwerp) – Printing – Start-up and implementation of an Object-Technology Center (OTC)
When Windows NT was gaining popularity about 15 people from different teams needed an introduction to this operating system. I was asked to organize training or train this group myself. I had build-up a decent knowledge of Windows NT building Taipan but I had no experience teaching or presenting. After investigating the market, I concluded that these trainings were very expensive and too shallow to be useful to my target group. In the end I decided to build a course myself based on various sources and my own experience. The training was very well received and resulted in IS personnel asking me questions on various topics.

1996-1997  Senior Software Engineer @ Agfa-Gevaert NV (Antwerp) – Printing – Design & implementation of Taipan v2.0 / Apogee PDF RIP
This project builds on top of the Taipan v1.x product. It extends its functionality and allows for simultaneous ripping (translate PS to bitmap) and imaging (sending image to engine), previewing, backup, etc. I was responsible for designing and developing the backup and previewing mechanism on the back-end. As part of this project I was also closely involved with the implementation of an internal cross-platform tools library (Mac, Unix & Windows).

1995-1996  Software Engineer @ Agfa-Gevaert NV (Antwerp) – Printing – Analysis, design & implementation of Taipan v1.1
T
his project was a follow-up of the Taipan v1.0 but also included translations to several languages amongst which Japanese. Again, besides implementing some minor improvements I was responsible for integration, installation and configuration.

1994-1995  Software Engineer @ Agfa-Gevaert NV (Antwerp) – Printing – Analysis, design & implementation of Taipan v1.0 (Raster Image Processor for Windows NT)
A RIP interprets a PostScript job (standard printer description language, created by Adobe, used on both Mac and Windows) to a so called ‘raster data’ (bitmap image) which is sent to an AGFA image setter to create a film or plate for the preparation of the printing process. The project was done using Microsoft Visual C++ under Windows NT. My part in the project was primarily the server implementation with the major part being the network communication with the clients (Mac, Windows & Unix) over AppleTalk PAP, TCP/IP, named pipes (Windows) and ‘hot folders’, the integration of these and the other components, and implementing the installation and configuration software.

1992-1994  Junior Software Engineer @ TechGnosis NV (Sint Katelijne-Waver) – Information Technology and Services – Analysis, design and implementation of SequeLink for Windows

1992-1992  Junior Software Engineer @ Krediet Bank (Brussels) on behalf of TechGnosis NV (Sint Katelijne-Waver) – Banking – Development of WIPE

1992-1992  Junior Software Engineer @ VTM (Vilvoorde) on behalf of TechGnosis NV (Sint Katelijne-Waver) – Broadcast Media – Analysis and design of a broadcasting system

1991-1992  Junior Software Engineer @ Min. v/d Vlaamse Gemeenschap - dienst AI (Brussels) on behalf of Logica NV (Brussels) – Public Sector – Analysis, design and implementation of ALFA

1991-1991  Junior Software Engineer @ Min. v/d Vlaamse Gemeenschap - dienst HAWZ (Brussels) on behalf of Logica NV (Brussels) – Public Sector – Analysis, design and implementation of an ‘agenda-system’

1990-1991  Junior Software Engineer @ ABK (Antwerp) on behalf of Logica NV (Brussels) – Banking – Installation of CSI and user support

1990-1990  Junior Software Engineer @ IBM (Brussels) on behalf of Logica NV (Brussels) – Information Technology and Services – Create test data for an interface towards the SWIFT