IoT platform backend development2016 - 2018O2.cz
Description: Contracting for one of the biggest Czech mobile operators.
My role: Developing a back-end of a consumer IoT stack. All applications were built as green field
projects with the Go language. All applications had unit and integration tests and were fully dockerized.
Application integration was done via gRPC messaging (bespoken in-house solution). Applications could
compile in under a second, including running complete unit test suite. All applications had startup time
well under a second. Memory footprint was circa 10MB per application after.
Main achievement: As the first developer working on the solution I had to do the full application
landscape setup. From installation and configuration of the application servers (15 development app
servers), through setting up CI, docker including docker registry, nginx, firewalls to TLS (including
setting up a certificate authority in Golang). In the later phase I successfully migrated this solution
onto Google Cloud's Kubernetes cluster.
Technologies: Go (roughly 100.000 LoC) as a programming language, Groovy and Python for occasional
scripting, gRPC for remote procedure calls, Rest services (definitions in Swagger) for mobile application
interoperability, Postgres as a database storage, Cassandra/BigTable as a big data storage, Firebase for
real-time mobile app updates and push notifications (FCM), Kubernetes/Docker and Ansible for runtime
isolation and resource management.
Tour operator website remake2014 - 2016Zájezdy.cz
Description: Contract working on a new web site for the company Zajezdy.cz. The web site allows
customers to find their package holiday and order it. Orders and CRM are then handled by other bespoken
systems.
My role: The web site is composed out of several key components and runs on top of the Grails
framework. My role was to implement the search and recommendation facility, data integration and sourcing
of data. In order to perform fast searches Apache Solr was used operating over a highly denormalized
dataset that was generated by a Spring XD instance. As most of the data was static a heavy caching was
involved using a Hazelcast distributed map system.
Main achievement: Hazelcast implementation including a bespoken monitoring and administration tool
as the one provided by the Hazelcast manufacturer is rather expensive.
Technologies: Grails to run the web site, Apache SolrCloud for fast searching, Spring XD for data
integration, Hazelcast for caching and distributed objects, Docker as a runtime container and MySql as the
database.
PWSS2010 - 2013Motability
Operations Plc
Description: A project to deliver and enhance an application that allows managing the full
life-cycle (application for a product, in-life support and disposal) of powered wheelchair and scooter
leasing.
My role: Prototyping and developing the main application from its inception to its release and
running.
Main achievement: Application delivered on time for less thanks to using at that time new framework
Groovy/Grails.
Technologies: JBoss/Groovy/Grails/Oracle/HTML to deliver the main application, Spring/Hibernate/MS
SQL/WS to deliver a bridge application between the customer facing application and our backend,
Spring/Hibernate/PL-SQL/JMS to deliver the dealer reward system.
MDP2012Motability
Operations Plc
Description: A stand-alone application to calculate and award money rewarding dealers for adhering
to our rules.
My role: Designing, developing and extending the application.
Main achievement: Application delivered in 9 months from the initial stage working against a fixed
deadline thanks to using Grails and employing vanilla scrum methodology.
Technologies: Weblogic/Grails/PL-SQL/ODI(ETL)/WS/JQuery/JSON
Price guide2011Motability
Operations Plc
Description: A portlet style application allowing our customers to choose their cars online.
My role: Data sourcing, system integration, offshore team liaising.
Main achievement: By constantly giving feedback to our management team prevented a failure by
identifier dishonest practices of our 3rd party providers.
Technologies: Tomcat/MS-SQL/SOA/PL-SQL
LES2008 - 2011Motability
Operations Plc
Description: An application allowing our pricing team to simulate a live of a vehicle (asset price,
advance payment, rentals, taxes, mandatory payments, depreciation to name a few) and thus produce correct
prices (initial payments, weekly rentals and more)
My role: Enhancing the application, in a later stage replacing the calculation engine
Main achievement: Replacing the calculation engine while assuring continuity and consistency of
pricing.
Technologies: JBoss/MS-SQL/Struts/XML/JQuery
OLA2006 - 2008Motability
Operations Plc
Description: One of the core application allowing our dealers to apply for cars from Motability.
My role: Enhancing the application, adding various functionalities (such as document library,
driving licence restrictions)
Main achievement: Although not the biggest in terms of size the document library proved to be a
success allowing our business team to be closer to dealers.
Technologies: JBoss/MS-SQL/Struts/JMS