Tomas Holas

Tomas Holas

Prague, Czech Republic
Hire Tomas
Scroll To View More
Tomas Holas

Tomas Holas

Prague, Czech Republic
Member since January 13, 2015
Tomas started as a Ruby on Rails enthusiast, but in 2010 he turned to JavaScript and never looked back. JavaScript has a really productive ecosystem, which is easy to hack on, and offers libraries for everything imaginable. Currently, he prefers to work with Angular, React, and NodeJS. Why hire Tomas? He strictly adheres to the KISS approach, prioritizing productivity over programmatic parlor tricks where a library is sufficient.
Tomas is now available for hire
  • Zoomsphere
    Angular 2, NodeJS, Koa, TypeScript
  • Kasra
    MongoDB, React, Flux, Node.js, Koa
  • Exigy
    AngularJS, TypeScript, Component Router
  • JavaScript, 8 years
  • AngularJS, 3 years
  • Node.js, 3 years
  • React.js, 1 year
  • Agile Software Development, 7 years
  • MongoDB, 3 years
  • SQL, 7 years
  • Ruby on Rails, 6 years
Prague, Czech Republic
Preferred Environment
OS X, Git, Sublime Text, NPM, Babel, Webpack
The most amazing...
...thing I've designed is a domain-specific language for constructing voice announcements from pre-recorded segments for use in major airports.
  • Architecture Consultant
    2015 - PRESENT
    • Executed a broad review of available front-end and back-end technologies to support business decisions about a technology for a new product.
    • Chose Angular 2 as the most suitable technology. At the time, it was still in beta, but stable enough to start working with and have an official release done before the time of product release.
    • Set up continuous delivery and Scrum workflow. Helped with developer interviews and supported the team to get off the ground.
    • Did code reviews and consults for tough developer problems to unblock whoever is stuck.
    • Maintained high-level control over the architecture and made sure that it evolved in the right direction when new challenges appeared.
    Technologies: Angular 2, NodeJS, Koa, TypeScript
  • Software Architect
    2015 - PRESENT
    • Devised and implemented the basic structure of an isomorphic (universal) React single-page application. The site now serves as a major publishing platform in Arabic with more than 100k regular users. The back-end is a REST API that supports both web and mobile (iOS and Android) applications. Both front-end and back-end use the newest JavaScript features to greatly simplify asynchronous workflows.
    • Set up deployment and continuous integration workflows with GitHub, Heroku, Codeship,, and and AWS, allowing us to deploy features many times a day with confidence.
    Technologies: MongoDB, React, Flux, Node.js, Koa
  • Frontend Architect
    2016 - 2016
    • Reviewed architecture of an Angular application that had multiple maintainability and performance problems. Identified key issues, mostly with using wrong components and an outdated build system.
    • Created a prototype using Angular 1.5, Component Router and some other suitable opensource libraries.
    • Integrated Formly framework with OData definitions to allow for sharing validation rules between front-end and back-end.
    • Set up continuous delivery with Github and Heroku.
    • Achieved the same core functionality, but with fraction of required code. The application is now much faster, and easier to extend.
    Technologies: AngularJS, TypeScript, Component Router
  • JavaScript Hacker
    Salsita Software
    2013 - 2015
    • Created an online WYSIWYG editor for designing Balfour publishing school Yearbooks. Written in AngularJS and a lot of SVG.
    • Worked with SmartBear's AlertSite UXM team to create a unified platform for developing rich web applications. Features configurable widgets, dashboards and colorful charts. AngularJS and Python.
    • Created a back-end for BeachApp, an iOS application and social network for sharing travel-related articles. Included a sophisticated MongoDB schema with geospatial index and Node.js server. Integration with Facebook and Evernote.
    • Proposed to switch to MongoDB immediately after realizing that the current project suffered from some awful architectural decisions (namely, CouchDB). Created a prototype in 1 week, and rewrote the rest of the codebase in another 2 weeks. This code is still used in production.
    • Presented my findings about CouchDB's shortcomings after the rewrite debacle in a "funny and engaging" presentation to the rest of the company. The presentation included was CAP theorem, approaches to indexing, and map reduction. After this presentation, we switched to MongoDB and never looked back.
    Technologies: JavaScript, AngularJS, Node.js, MongoDB
  • Developer Evangelist
    2014 - 2014
    • Held presentations at developer conferences.
    • Wrote technology articles for the company blog.
    • Participated in designing materials for hiring.
    • Prepared workshops for employees.
    • Worked on application prototypes.
    Technologies: Node.js, React.js
  • Flex Developer
    2012 - 2013
    • Created a prototype of the UNO project intended to manage Czech Savings Bank's internal requests.
    • Built an innovative screen that used progressive elimination of sources to search for desired request.
    • Extracted front-end components from the Brazil project for reuse.
    • Worked with architects to provide a well-suited data model and SOAP interface.
    • Integrated the front-end application to business process modeling systems.
    Technologies: Adobe Flex, ActionScript
  • Flex Developer
    2011 - 2012
    • Designed and developed the front-end for the BaggageUI airport announcement application.
    • Rewrote the front-end for the GateUI announcement application with intuitive features for text composition on the touchscreen.
    • Designed a domain-specific language for constructing voice annoucnements from pre-recorded segments and rewrote the string templating based on a flexible Java-based builder pattern solution.
    • Wrote a Ruby daemon designed to run the UPIS system on an ARM-based single-board computer.
    • Ported the GateUI flex application to iOS. It uses stripped-down audio data samples and serves as a showcase application in the App Store.
    Technologies: Adobe Flex, ActionScript, Java, Android, iOS, Ruby
  • Lecturer
    Unicorn College
    2008 - 2012
    • Taught the basics of programming and web development with Ruby and Rails.
    • Designed the course materials for both Ruby and Rails courses.
    • Wrote a few sample applications showing the best practices with the Rails framework.
    • Taped Rails programming screencasts.
    • Created an application for random written test PDF generation from pre-defined question pools. This was then adapted for student self-testing as well.
    Technologies: Ruby, Ruby on Rails, HTML, CSS, JavaScript, jQuery
  • Rails Developer
    2006 - 2008
    • Advocated a move from PHP to Ruby on Rails.
    • Added price reporting functionality to the existing reporting system (StoreData). It used some custom MySQL add-ons.
    • Designed a B2B sytem for car parts with configurable user interface for different part types.
    • Connected the B2B system to the proprietary TecDoc SQL database of most cars and parts ever made. It had 100+ tables, with no documentation and German naming conventions.
    • Wrote a prototype of the mobile web application for taxi drivers on a Windows CE phone with GPS.
    Technologies: Ruby on Rails, MySQL
  • Linux Administrator
    2005 - 2006
    • Installed, configured, and supported various Linux servers.
    • Created a server providing basic functionality for a small company's mail server (Postfix), router and firewall (Iptables), file sharing (Samba), and web server (Apache).
    • Designed, implemented, and deployed simple web pages using PHP, MySQL, and Apache.
    • Created a configurable traffic shaper using PHP, iptables, and HTB (hierarchical token bucket).
    • Configured an IP subnet for a small internet service provider.
    Technologies: Linux, PHP, Bash, Iptables
  • Alertsite UXM (Development)

    Smartbear's new platform for website monitoring.

  • BeachApp (Development)

    Social network for sharing travel-related articles.

  • SimpleVOX (Development)

    SimpleVOX airport public address system, now running in Prague and Vancouver airports. Written in Adobe Flex, demo compiled for iPad.

  • Prague Airport Android App (Development)

    The official mobile phone application for Václav Havel Airport in Prague.

  • Presentation about the Gulp Build System at Czech WebExpo Conference (Other amazing things)

    With this presentation, I managed to "evangelize" quite a few Czech developers into using Gulp instead of Grunt.

  • Trip Planning Application Prototype (Development)

    A simple prototype application showcasing my favorite "best of breed" libraries.

  • Entheogen Color Scheme (Design)

    Color scheme for Sublime Text 3, designed specifically for ECMAScript 6.

  • Navigating the React.JS Ecosystem (Publication)
    In this article, I'll go through some of the interesting features and libraries that are available to use with React. Even if you don't plan on using React, taking a look at its ecosystem is inspiring. You may want to simplify your build system using the powerful, yet comparatively easy to configure, module bundler Webpack, or start writing ECMAScript 6 and even ECMAScript 7 today with the Babel compiler. So, let's explore the React ecosystem!
  • Tomas is a mentor in the Toptal Global Mentor’s Program. This program is a partnership between Toptal and General Assembly to provide high quality mentorship for students from minority and low income backgrounds who are looking to begin their careers as professional software engineers. Tomas shows commitment to diversity in tech by mentoring a General Assembly student every week for a year, covering everything from coding tips and tricks to advice on making it in the industry.
  • Languages
    JavaScript, Less, Ruby, CoffeeScript, CSS3, SQL, HTML5
  • Frameworks
    AngularJS, Bootstrap 3.0, AngularJS 2.0, Karma, Express, Ruby on Rails
  • Libraries/APIs
    Node.js, REST API, React.js, jQuery, Highcharts, Underscore.js, Google Geocoding API, Facebook API
  • Paradigms
    Agile Software Development, Object-oriented Programming (OOP), Asynchronous Programming, REST, MVC, Scrum, Unit Testing, AJAX, Behavior-driven Development (BDD), Test-driven Development (TDD), Functional programming
  • Storage
    MongoDB, MySQL, PostgreSQL, Amazon S3, NoSQL
  • Tools
    Gulp.js, Chrome Developer Tools, Bower, Sublime Text 3, Git
  • Platforms
    Heroku, Google App Engine, Android, Linux, Mac OS
  • Misc
    SVG, Web Development, Front-end, Back-end Development, JSON, Single-page application, Debugging, CSS Preprocessors, Front-end architecture
  • Master's degree in Biomedical Engineering
    Czech Technical University - Prague
    1999 - 2005
I really like this profile
Share it with others