Michal Molhanecfoto200.jpg

Contact

Address        Belcicka 2826/14, 141 00  Praha 4, Czech Republic

Phone                +420 608 102 963

E-mail                michal@molhanec.net

Linkedin        https://www.linkedin.com/in/michal-molhanec/

Personal Information

        

        Born                5. 7. 1981 in Prague

        Status                Single

        Nationality        Czech

Education

2014–2017        Master’s Degree in Informatics

                Czech University of Life Sciences Prague

                Diploma thesis: Ruby to Python 3 source code translator

2002–2005        Bachelor’s Degree in Applied Informatics

                University of Economics Prague

                Bachelor thesis: Syntax highlighting for source code embedded in DocBook documents
                        (XSLT processors extension written in Java)

Courses

        2014–2015        Cisco CCNA Routing and Switching 1 and 2

        2011                Four day training in computer networks basics and Cisco IOS basics
                        
Intercom Systems a.s.

Work Experience

2017–now        Vigour

Programmer

        Ruby

        JavaScript/React

        MongoDB

        Docker instrumentation

2010–2017        Institute of Geology of the Czech Academy of Sciences

                IT manager

                        MS Active Directory and MS Exchange management

                        Networking including Cisco L3 switches management

                        Web maintenance (PHP, MySQL, Drupal)

                        Development of utilities (Python, Ruby, PHP, VBA, Lazarus)

Skills

20+ years of programming. Good general knowledge of informatics and computer science, overview of programming techniques and idioms like design patterns and relational databases theory.

Programming languages and web development

        Advanced

Python, Ruby, C

Client side JavaScript (incl. ES6+), HTML, XML, CSS

Intermediate

React

PHP

Java (Java SE, Swing, SWT)

Visual Basic for Applications

Delphi/Lazarus/Pascal

BASH

Basic

        Go

C# (WinForms)

C++

PowerShell

        Databases

                MongoDB

                MySQL and SQL databases generally

        Design, modelling and computer theory

                ERD, UML

                Design patterns

Object oriented programming

Functional programming

Relational modelling

        Versioning systems

                Git, SVN (Subversion), CVS

Container technologies

Docker including Docker Swarm

        Operating systems

Windows, Linux

Cisco IOS

Networking

        Cisco L3 switches management

Windows Server administration

MS Active Directory

MS Exchange

Languages: English, Czech

        Driving license

Technologies I’m eager to learn more if opportunity comes
        Go
        Kotlin
        Android and iOS development
        modern C++ (C++11 and beyond), Qt
        modern Java (Java 8 and beyond)
        modern C#

Computer interests

        Typography

        Modern and non-imperative languages (Go, Kotlin, F#, Scala), domain specific languages

        Modern web frameworks and databases, reactive programming patterns

        Analysis and design of computer systems and databases

Other interests

        Running/jogging

        Yoga

        Playing guitar and music generally

        Fiction and nonfiction books

Personal projects

Diploma thesis: Ruby to Python 3 source code translator https://github.com/molhanec/rb2py

Bachelor thesis: Syntax highlighting for source code embedded in DocBook documents
                
http://xslthl.sourceforge.net/

XSLT processors extension written in Java (not maintained by me anymore)

        FileZilla 3 FTP client Czech localization https://filezilla-project.org/

        

        AllegroPNG http://alpng.sourceforge.net/

                Library for reading/writing PNG images written in C

                Own PNG reader and writer implementation

                Own zlib decompression (inflate) implementation

                Own color quantization implementation


More detailed skill description

Programming

I’ve been programming since the beginning of 90’s. I’ve been always keen to not just produce the code but also to study how it works and combine theory with practical coding.

Python

I’ve been using Python for many years, mostly scripts and smaller applications. Never used Django yet although I have general experience with MVC frameworks and I’ve used Flask for smaller applications.
I also did small GUI utilities using Tkinter and PyGTK.

Ruby and MongoDB

At work we develop backend mainly using Ruby and MongoDB. We are not using Rails although the company’s MVC framework is not that different. I’ve written one small app using Ruby on Rails 5.

I consider Ruby very nice language for writing internal Domain Specific Languages.

JavaScript and React

We also develop our frontend using JavaScript with React.

Plain C

I’ve been using plain C for many years mostly together with the Allegro game/multimedia library.

Go

I really like this language and I’ve started to learn it.

PHP and MySQL

I’ve developed many smaller sites during the years using PHP and MySQL. The last one using Bullet PHP Micro-Framework. I also maintained website based on Drupal 6.

Java

I used Java mainly at the universities, as it was the main language at the University of Economics. That were the times of Java 1.4-1.5. I’m trying to monitor new developments in the Java area like lambdas, functional interfaces, streams, modules etc. although I’ve never really did real development in Java for several years. The advantage is that I know most of these concepts from other languages.

I’m familiar mostly with Java SE, i.e. Swing and SWT GUI toolkits. I quite like SWT and used it even from other languages like Jython (Java version of Python).

Although during my studies at University of Economics we did web development using the Struts framework and we were even introduced into Java EE it is too far gone. Recently I started to learn Spring framework.

I would also like to learn Kotlin language as a more concise language for the Java platform as well as for Android development.

Visual Basic for Applications

I’ve developed several macros mostly for the MS Excel.

Delphi/Lazarus, C# (WinForms)

During the years, I’ve developed several GUI utilities using various versions of Delphi/Lazarus using VCL/LCL and Visual C# using WinForms. Not really keeping up with more recent C# features like LINQ (although I very much like it). Being Pythonist I really like the Boo language for the .NET Framework however the language is sadly gone.

C++

I’ve used C++ as a primary language in the times of C++98 standard. Current versions of C++ looks very nice and I would like to try them. Possibly in combination with the Qt GUI library.

Other

Networking

I maintained the network at the Institute of Geology including management of Cisco L3 switches using Cisco IOS.

I also have Cisco CCNA Routing and Switching 1 and 2 certificates.

Windows Administration

I maintained MS Exchange and Active Directory.

Docker

I’m currently developing tools for deploying dockerized applications to cloud: MS Azure and Amazon Web Services. We use plain Docker and Docker Swarm.

LaTeX

I wrote both my bachelor thesis and diploma thesis using LaTeX typesetting program.

Michal Molhanec CV                                                                                                       /