
Michal Příhoda
Verified Expert in Engineering
Software Developer
Michal is a programmer with more than a decade and a half of experience. Currently, his languages of choice are Scala and JavaScript. As a developer, he's worked on back-end services as well as the front-end, UI, and mobile projects. Michal also has many years of experience as a Unix/Linux administrator.
Portfolio
Experience
Availability
Preferred Environment
Git, IntelliJ IDEA, Unix
The most amazing...
...thing I've built has been a certificate authority for the Czech government issuing certificates to every small business in the country.
Work Experience
Lead Developer
eIdentity a.s.
- Developed the core software for certificate which is the authorization, accredited in the Czech Republic.
- Developed a high-performance time-stamping service, accredited in Czech Republic.
- Created a web application covering the certificate issuing process.
- Created a validation service for long-term signature validation.
- Prepared the deployment and high-availability infrastructure for the services.
Lead Developer
e-Business Services a.s.
- Developed an e-shop supporting the whole distribution chain, from the vendor through distributors, dealers to customers.
- Developed an electronic auction system.
- Developed a Telematic application to analyze traffic on Czech highways.
- Created a service asynchronously integrating multiple systems for Czech Metrology Institute.
- Created a continuous integration infrastructure for application development.
Developer
Ententee
- Implemented a single sign-on solution for a Java web application including the user interface.
- Developed a rich configuration UI for a Java server application.
- Implemented a permission system for user authorization in a modular Java server app.
- Developed a custom web framework for a modularJjava server app.
- Created a migration tool to migrate user data from OpenSSO to custom implementation.
Lead Developer
Globopolis s.r.o.
- Led a small team of developers.
- Ported a web portal from MySQL to Oracle.
- Created a servlet for map image generation.
- Integrated multiple input sources via XML.
- Started rewriting the portal into Java.
Unix Administrator
Spinet a.s.
- Created an internet provider from scratch.
- Administered email servers, web servers, and DNS servers.
- Supported dial-up users.
Experience
EET CA
ACA EIdentity
Czech Metrology Institute
OpenHRE
TSA EIdentity
Aegon Modelace
eFakt
Skills
Languages
Java, JavaScript, Scala, SQL, HTML, XML, Objective-C, HTML5, Perl, Markdown, Python, UML, R, Less, PHP, Bash, CSS, Domain-specific Languages (DSLs), Jython, Groovy, XSLT
Libraries/APIs
Mustache, Immutable.js, React, jQuery, Underscore.js, RefluxJS, BouncyCastle, JAXB, Commons HttpClient, Guava, RequireJS, OpenCV, Node.js, Moment.js, OpenLDAP, iText, spray, JAX-RS, JAX-WS, Backbone.js, CocoaPods, Akka Streams
Tools
IntelliJ IDEA, Apache, OpenVPN, Shell, Git, Apache Maven, SBT, Vim Text Editor, NPM, Cucumber, Tmux, Sketch 3, Jira, ITerm, Terminal, IPython Notebook, Chrome Developer Tools, ScalaTest, Zsh, Ansible, VMware, SoapUI, NGINX, Babel, Apache Tomcat, FreeMarker, Mocha, Webpack, Vagrant, Subversion (SVN)
Paradigms
Unit Testing, Functional Programming, Agile Software Development, CQRS, Behavior-driven Development (BDD), Test-driven Development (TDD), Domain-driven Development, REST, Functional Reactive Programming, Reactive Programming
Platforms
iOS, MacOS, Linux, Docker, Unix, Oracle, Jakarta EE, Xen, CoreOS, Debian Linux, Java EE, JBoss
Frameworks
Play, JUnit, Lift, Play Framework, Jakarta Server Pages (JSP), AFNetworking, Flux, Google Guava, Guice, Google Guice, Jasmine, Bootstrap 3, Akka, Akka 2, Tapestry, Rx, Spring, Hibernate, TestNG, Redux, Apache Velocity, ReactiveCocoa, OAuth 2
Storage
PL/SQL, CouchDB, MongoDB, MySQL
Other
Data Structures, Algorithms, Domain-driven Design (DDD), GitFlow, Apache Commons, OAuth, POP3, IMAP, SMTP, HTTP, Gitolite, Specs, Semantic UI, LDAP, Gentoo, GNU, EJB 3, SOAP, Reactive Streams, FontAwesome, Enterprise Java Beans (EJB)