Martin Ždila, Developer in Košice, Košice Region, Slovakia
Martin is available for hire
Hire Martin

Martin Ždila

Verified Expert  in Engineering

Bio

Martin is a software professional specialized in JavaScript full-stack software design and development, OpenStreetMap volunteering, and embedded system development (Mongoose OS). He is a former Java developer (10+ years) and is dedicated to the development and proliferation of open-source software and technologies. He considers himself very agile in learning new technologies and finding solutions to difficult technical problems.

Portfolio

FPT Slovakia
Mongoose, ESP8266, React Native, Node.js, React
Gruveo
WebRTC, Redux, React, Node.js, Amazon Web Services (AWS)
Freemap Slovakia
OpenStreetMap

Experience

Availability

Part-time

Preferred Environment

Eclipse, Jira, Git, Visual Studio Code (VS Code), Linux

The most amazing...

...thing I've built is www.freemap.sk and www.gruveo.com.

Work Experience

Senior Developer

2018 - PRESENT
FPT Slovakia
  • Developed the SmartHome back-end mock server for easier application plugin development and testing.
  • Constructed firmware for the Garage Door controller based on ESP8266 and Mongoose operating system.
  • Built firmware for RGB-CWW LED lamp based on ESP8266 and Mongoose operating system.
  • Architected SmartHome application plugins for some smart devices.
  • Supported the development of the SmartHome application on a Pulsar Linux embedded computer.
Technologies: Mongoose, ESP8266, React Native, Node.js, React

Developer

2015 - PRESENT
Gruveo
  • Developed gruveo.com, a web app built with React, Redux, and Webpack with WebRTC as its core technology.
  • Developed a signaling server to manage internet video calls.
  • Developed a call recording server.
  • Developed some browser extensions for gruveo.com.
  • Integrated the solution with Docker Compose.
  • Integrated Google Drive API, and various AWS APIs/services.
  • Integrated payment systems Paddle and FastSpring.
Technologies: WebRTC, Redux, React, Node.js, Amazon Web Services (AWS)

Member of the Board

2010 - PRESENT
Freemap Slovakia
  • Achieved "Super Mapper" status.
  • Imported a huge number of buildings from Cadastre.
  • Imported land coverage from EEA Urban Atlas and Corine Landcover.
  • Implemented a Simplify Polygon JSOM plugin.
  • Created a custom map theme using CartoCSS in TileMill.
  • Created a wizard for embedding maps using Leaflet.
  • Mapped thousands of kilometers of hiking and bicycle trails in the outdoors.
  • Helped find bugs in the map and taught new mappers.
  • Presented OpenStreetMap at a local meetup.
  • Developed the freemap.sk portal in TypeScript with React and Redux.
  • Developed the back-end server for freemap.sk in Node.js using Koa and MySQL,.
  • Developed the Outdoor map layer (freemap.sk/?layers=X) writing my own mapserer which is written in Node.js and uses Mapnik to render the map. Created a new way to write Mapnik styles, in JS, using "JsNik."
Technologies: OpenStreetMap

Senior Frontend Developer

2020 - 2021
Hotovo
  • Developed a back-office web app for public winter footway maintenance.
  • Bootstrapped front-end applications for seed delivery management.
  • Contributed to the development of a mobile web app for end-customers to plan their journies and buy tickets for various means of transportation like buses, trams, trains, shared bicycles, scooters, and taxis.
  • Tracked and fixed issues using Jira as a reporting tool.
Technologies: React, Material UI, Redux, React Router, Tailwind CSS, Emotion Library, Styled-components, Mapbox GL, Amazon Web Services (AWS)

Application Developer

2014 - 2015
EEA s.r.o.
  • Helped to create a payment router with a web management console. Mostly focused on payment error resolver.
  • Created a web console for managing the application (Partners, Merchants, Users, Transactions, Terminals, Updates, Payment setting etc.) using AngularJS and Bootstrap.
  • Created a statistics view using D3 chars.
  • Implemented server security using Spring Security, supporting OAuth, Basic HTTP Auth, and form authentication.
  • Helped to design multilayer architecture consisting of REST, Facade, Service, and DAO.
Technologies: Robot, Webpack, AngularJS, QueryDSL, Hibernate, Spring

Mulesoft Anypoint Studio Template Developer

2014 - 2014
Hotovo.org
  • Implemented various templates for aggregation, migration, synchronization, and report generation from different connectors (SAP, Siebel, Salesforce, JDBC).
Technologies: MuleSoft

Application Developer

2014 - 2014
4Q s.r.o.
  • Developed an Android application for managing stocks, customers, orders, meetings, contacts, tasks, and refunds using EclipseLink, Glassfish, and MySQL.
  • Built a synchronization protocol between mobile clients and the server based on REST HTTP.
  • Constructed a Java server application for managing stocks, customers, orders, meetings, contacts, tasks, and refunds.
  • Created a web application for resource and order management using AngularJS.
  • Architected a server application for resource and order management using EclipseLink, Glassfish, and MySQL.
Technologies: MySQL, EclipseLink, Jersey, JPA, JEE, Java, Android

CTO, Software Architect, and Developer

2007 - 2013
M-Way Solutions Slovakia s.r.o.
  • Created an application framework based on OSGi.
  • Created a mobile application (midlet) for mobile banking.
  • Created a mobile device management system for managing iPhone, Android, and Windows Mobile phones.
  • Created a mobile provisioning application.
  • Created a transcoding template engine adapting desktop websites for mobile devices.
Technologies: Java ME, Android, OSGi, GWT, Java

Developer, Administrator

2003 - 2007
EpiSoftware Slovakia s.r.o.
  • Created a web-based database form a modeler.
  • Created reporting software for Cognos OLAP data cubes.
  • Administered Linux servers running web and email services.
Technologies: Java

Network Administrator, Developer

2001 - 2003
Antik Telecom
  • Configured various firewall settings with Netfilter.
  • Set up a mail server (Qmail) for internet provider customers.
  • Set up webhosting for internet provider customers.
  • Created software to inject notifications into a webpage, either ads or debt notifications.
  • Configured routers.
  • Configured QOS.
  • Supported the customers.
  • Configured network monitoring system Nagios.
Technologies: C, MySQL, PHP, Linux

Application Developer

2001 - 2001
Datakon s.r.o.
  • Created a web application for monitoring manufacturing processes for paper and pulp.
Technologies: PHP, MySQL, Apache HTTP Server, Linux

Web and Server Developer

2000 - 2001
ProWeb Consulting, a.s.
  • Developed an information system for doctors in PHP.
  • Implemented a custom mail agent in C.
Technologies: C, PHP, HTML

Application Developer

2000 - 2000
Procesná Automatizácia a.s.
  • Created an application for managing warehouse stock in Borland C++.
Technologies: C++

Wirecard Switch

Solution of mobile payments for Wirecard. My role was development of the web-client and server. Core technologies are Spring and JPA on server and AngularJS on client side.

Worked with these technologies, among others: Advanced Spring Web (REST API), Spring Security, FlywayDB, Robot Test Framework, and Swagger on the server side; AngularJS, Bootstrap, Webpack (with bower, npm), and Apache FOP XSLT on the client side; and Robot Framework (integration tests, python), and Mercurial in other areas.

Sales Integration System

Application for integrating various heterogenous back-end systems of various customers focused on sales. It includes management of stocks, customers, contacts, orders, refunds, and tasks (meetings) and provides some statistical analysis.

The architecture consists of three distributed layers:

• Back end on customer side
• Central application server
• Mobile client for retail dealers

The central application server synchronizes with back-ends and the mobile client synchronizes with the central server. The solution enables retail dealers to manage meetings and to do sales directly on customer's site.

My role was to design and develop the Android application and to clean up and develop additional features of the central application server. My task was also to design and implement a universal and extensible synchronization subsystem between server and back-ends.

Technologies used:

• Android SDK with Android support libraries. Includes Activities, Fragments, Services, Content Providers, SQLite, Notifications, Alarms, and Preferences.
• Server: Glassfish 4 (EJB, JPA using EclipseLink, JTA, JAX-RS Client and Server using Jersey and CDI)

Templates for Mulesoft Anypoint Studio

https://www.mulesoft.com/platform/templates
Development of templates for Mulesoft Anypoint Studio. The purpose of the templates is to provide a base for integrating the two platforms. Every template works with a different type of business object, different platforms, and a different way of integration. Platforms: Salesforce, SAP, Oracle Siebel, Workday, and Servicenow. Integration ways: aggregation, migration, broadcast, and bi-directional synchronization. Including writing of integration tests.

GPX Animator

https://gpx-animator.app
GPX Animator is an app that generates a video from one or more GPX files. I contributed to this video converter app by writing it in Java using Swing. It has many features and a graphical user interface.

GPS SMS Monitoring

https://github.com/zdila/arduino_gps_gsm_tracker
A hobby project about GPS monitoring via SMS based on Arduino, Mediatek GPS module and SIM900A GSM module. The tracking module is controlled and queried by SMS. Suitable for things like vehicle tracking.

Arduino based GPS Datalogger and Applications

Hobby project. The project involved creating GPS Dattalogger based on Arduino AVR. Includes the following parts: Arduino Uno compatible, GPS receiver (UBlox/Mediatek, NMEA, UART), SD card (I2C), step-up boost switching power supply, status indication. Integrated SPI Flash memory. Firmware developed with Arduino SDK + libraries.

Also got experience working with text LCD display, barometric sensor, transmitters (433MHz and 2.4GHz), bluetooth (UART) and communication with Android, RGB LED Strip, GSM module SIM900A. Good soldering skills and understanding of electronics.

RGB LED Strip Android Controller

A hobby project with an RGB LED strip controller based on Arduino Leonardo, controlled via Bluetooth with my own Android application. Includes RTC for "offline" scheduling.

Resource and Order Management System

Development of a resource and order management system.

Technologies: EclipseLink, Glassfish, MySQL, AngularJS

Exisport Maps

Developed a client-side map related to parts mostly based on jQuery and Leaflet.

Relution

Software architect and developer of the product.

The mCAP is M-Way's basic building block, which provides the mobile infrastructure for businesses. It can be used to implement a variety of different mobile services which can be used for reproduction of enterprise applications. Services and applications for various operating systems can be managed via one platform. The mCAP is highly scalable and optimized for maximum performance.

Technologies used in the first version: Java, Dojo 0.3, Apache Jackrabbit JCR 1.x, Spring Framework, Servlets, web technologies, and more

Technologies used in the second version: Java, Spring DM, Apache Jackrabbit JCR 1.x, M-Way ORM, Spring Security, OSGi (Apache Felix). OSGi Enterprise (Configuration Admin, Matatype, Declarative Services, HTTP services, Evends, Logging, User Admin), Log4j, Slf4j, JAXP, JAXB, Spring Framework 2.x - 3.x, GWT 1.4 - 2.5, Servlets, Web Technologies, Jersey (JAX-RS), Jackson (JSON), JAXB, SAX, StAX, XPath, and XSLT.

Mobile Device Management

Software architect and developer.

The Mobile Device Management (MDM) platform provides easy to use features for the core aspects of Enterprise Mobility Management (EMM) like configuration management, application management, security, and monitoring.

Technologies: mCAP, iOS MDM, iOS Push, GCM, Android MDM application development, SCEP Server development, SyncML, Activesync

Mobile Banking Client

Architect and developer of Mobile Banking Client J2ME Midlet. Technologies: J2ME Polish, WTK.

Website Irian.at

Developer of the http://irian.at/ website. Currently another, more recent version, is online. Techologies: JSF Facelets, Web Presentation Technologies

Apparo Fast Edit

Software architect and developer of the product.

Apparo Fast Edit can help you expand your business intelligence environment to include a high-performance data entry component featuring Excel data import support for your everyday business activities.

Technologies: Java, Struts 1.0, Spring Framework 2.x, Hibernate 3.x, JDBC, JSF 1.0, Web Technologies

Kovine Business Graphics

Developer of the web application for drawing graphs from Cognos OLAP Cubes. Technologies: Java, JSP, HTML, CSS, AJAX, Eclipse Modeling Framework, Struts, Servlets

Informator

http://sourceforge.net/projects/informator/
Software architect and developer of the product.

Informator is a system residing on an Internet Gateway to send pop-up messages via Web Browser to a specific host on LAN. That could be useful for Internet Service Providers if they need to send some information to their customers.

Technologies: PHP 4, MySQL, Linux, Apache HTTP, Netfilter, Transproxy 1.5

Paper Manufacturing Monitoring System

A monitoring system for process of manufacture of paper and pulp. Software architect and developer. Technologies: PHP 4, MySQL

Stock Monitoring Application

Developed the application in Borland C++ for stock monitoring.

Gruveo

https://www.gruveo.com/
React/Node.js development of WebRTC videoconference application. I have been the only developer of the web app (excluding design and styling) and back-end servers.

Freemap Slovakia Portal

https://www.freemap.sk/
Developed the web app (PWA) in TypeScript with React + Redux and backend server in Node.js.

Webapp: https://github.com/FreemapSlovakia/freemap-v3-react
Backend: https://github.com/FreemapSlovakia/freemap-v3-nodejs-backend

Toposcope Designer

Developed the web app in React.

Garage Door WiFi Controller

Developed firmware for Garage Door controller based on ESP8266 and Mongoose OS.

RGB-CWW LED Lamp Driver

Developed firmware for RGB-CWW LED lamp based on ESP8266 and Mongoose OS.

SmartHome Mockserver

Developed SmartHome backend mockserver for easier application plugin development and desting. React, Redux, TypeScript, NodeJS.

Outdoor map layer

https://www.freemap.sk/?layers=X
Developed Outdoor map layer writing my own mapserer which is written in Nodejs and uses Mapnik to render the map. Created a new way to write Mapnik styles - in JS, using "JsNik".

https://github.com/FreemapSlovakia/freemap-mapnik
https://github.com/FreemapSlovakia/freemap-mapserver
https://github.com/FreemapSlovakia/jsnik

Presentation on SoTM CZ+SK 2019 about Freemap Webapp and Outdoor Map

https://openstreetmap.cz/sotm/2019
I was a presenter on Presentation on SoTM CZ+SK 2019. You can find both of my recorded presenttions at https://openstreetmap.cz/sotm/2019 (Martin Ždila).

Presentation on SoTM CZ+SK 2016 about Freemap Slovakia

https://openstreetmap.cz/sotm/2016
You can find my presentation at https://openstreetmap.cz/sotm/2016 (Martin Ždila)

Presentation about Mongoose OS with Demo

https://docs.google.com/presentation/d/1dIXqMXzXAHo3agcn2OgOQ0g5IyxKvipEKg0eU7FG1QA/edit?usp=sharing
I had a presentation about Mongoose OS with demo on Eastcode Sessions.

Presentation about LPWAN

https://docs.google.com/document/d/1M4GWWOX8Wn8ryGqmg5JDe6V4tQNX1G4eefoz0z2dwyM/edit?usp=sharing
I had a presentation about LPWAN (LoRa WAN, Sigfox) on Eastcode Sessions.
1998 - 2003

Master of Science Degree in Informatics

Technical University Košice - Košice

1993 - 1998

Technical High School Degree in Electronic Computer Systems

Secondary School of Electrical Engineering in Košice - Košice

Libraries/APIs

Node.js, React Router, React, Leaflet, SAX, OpenStreetMap API, REST APIs, WebRTC, React Redux Form, Apache HttpClient, Java Collections, Java Servlets, JDBC, JAXB, Google Drive API, Mapbox GL, Emotion Library, QueryDSL, Google Analytics API, JMX, Java Security, Java 2D, Apache Lucene, JGroups, Facebook API, Jackson, Java Transaction API (JTA), D3.js, OpenGL, JAX-RS, Android API, jQuery, Google APIs

Tools

Redux Thunk, Webpack, JOSM, Amazon Simple Notification Service (SNS), Amazon Simple Email Service (SES), Amazon ElastiCache, Amazon Elastic Block Store (EBS), NPM, Eclipse IDE, Inkscape, Ivy, Mercurial, Git, Docker Compose, GIS, NGINX, Jira, Apache HTTP Server, Mongoose, Javadoc, Bower, Apache JMeter, Apache Ant, Android Studio, Apache Maven, Apache Tomcat, Jetty, Java Concurrency, Subversion (SVN), Atom, BrowserStack, Docker Hub, Ansible

Languages

ES7, TypeScript, ECMAScript (ES6), JavaScript, CSS, HTML, HTML5, Java, XSLT, Bash Script, CSS3, SQL, C, C++, PHP, Visual Basic, Groovy, Perl, Felix

Frameworks

Redux, Express.js, Koa, Spring JDBC, Flux, Spring, OAuth 2, Hibernate, Bootstrap 3, JUnit, Spring MVC, React Native, AngularJS, Robot, Electron, Swing, Vert.x, Jersey, Spring Security, Apache Axis, OSGi, Jakarta Server Pages (JSP), JSF, Apache Felix (OSGI), JPA, GWT, Next.js, Tailwind CSS, Material UI

Paradigms

REST, Agile Software Development, Design Patterns, OLAP

Platforms

Linux, Visual Studio Code (VS Code), AWS Elastic Beanstalk, Amazon EC2, Debian Linux, JSE, Arduino, Docker, Amazon Web Services (AWS), Eclipse, JEE, MuleSoft, Java ME, Java EE, Oracle Database, Android, Windows

Storage

MySQL, Amazon S3 (AWS S3), Redis, PostGIS, PostgreSQL, SQLite, MariaDB, Spring Data, Apache Derby, MongoDB

Other

OpenStreetMap, HTTP, Software Design, Mapnik, ES6 Promises, Chrome Extensions, GPS, AT Commands, Apache Commons, CartoCSS, Public-key Cryptography, LDAP, ESP8266, ESP32, Styled-components, UI Development, EclipseLink, Amazon Route 53, OSGi User Admin, OSGi Event Admin, OSGi Metatype, OSGi Configuration Admin, OSGi HTTP Service, OSGi Declarative Services, Apache FOP, SVG, SMTP, POP3, IMAP

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