Jan Skála

Software • Developer • Web • Cloud • DevOps • Security



I started programming when I was at elementary school. It was more like block programming, a software called Baltík. I learned some basics: conditions, loops, coordinates, algorithms and stuff like that. Then I switched to C# and started doing desktop apps. When I started working in TheNetw.org I discovered a framework DotVVM. Through that I started experimenting with web apps. It really helped me to get around basics of web development without taking deep dives into JavaScript, which I did later anyway. Today I focus on creating web API’s or other backend services. I enjoy working with Azure and building cloud solutions, taking advantage of serverless solutions like Logic Apps or Azure Functions.

I am not just a tech guy. I also have passion for music. I play the piano in a band called JGDIX. I like jazz, swing and boogie-woogie. I love jam sessions and improvising. I have played since my early childhood. I didn’t know how to read back then, yet still I managed to play somehow. Maybe I just didn’t hear my mistakes, I was three years old so maybe that’s the case.

Contact Me

Electron Master

This app was originally just another school project. I only wanted to fulfill subject requirements. But while coding this I realized other students could use it as well. The app is supposed to compute electron configuration for each element. In atomic physics and quantum chemistry, the electron configuration is the distribution of electrons of an atom or molecule (or other physical structure) in atomic or molecular orbitals. Pretty simple task, but one can get bored after a while, so I made this tool for everyone who needs it.

I was happy when I heard that other people from the school use it too. Either to check their homework or just for practicing. Later I added an integration with Wolfram. So now you can even get some basic info about the element.

Close Project GitHub Download Now

Drivers Backup

Drivers Backup allows you to save your drivers locally. It was created in order to help Windows users during re-installation process. Or if you want to transfer one driver from your device to another. It can be used on Windows 7 or higher on any PC or Windows tablet.

Close Project GitHub Download Now

Holické noviny

This web was my first bigger experience with Wordpress. Previously I only used Wordpress for his templates and easy setup. The customer made thinks very easy, because he already bought a template. There were some design changes, for example, he wished to have a poll next to the main post carousel. His previous website was homemade, without any kind of standard CMS so he wanted to upgrade.

But he wanted to keep two core functionalities from previous system. Forum and a place for adverts everybody could post to. We upgraded this feature by creating a magic link for each ad. So, the author could remove it when he wanted.

All ads act as wordpress posts, so there was an option to put them in the main carousel. Same about image invitations.

Close Project Show


My friend Jan Hrubeš studies chemistry at University of Pardubice. He organizes a competition called Chemiklání, which is a team competition for students who are interested in chemistry. He and other organizers were struggling with having no information system suiting their needs. They used Microsoft Excel with set of macros in order to achieve some basic functionalities like managing teams, tasks and score for each team.

Problem is that with growing number of participants, this system became very confusing and a single typo could have huge negative consequences latter. Thus, we came with an idea of creating an Information system, capable of managing teams, tasks and easy to use form for editing results. Now the users can filter data they need to display. The system also warns them if they edit some data, someone else is or was editing before.

I didn’t have much time to develop this solution so I was looking for a framework that would help me build a proof of concept in a short time. Back then I was working at Riganti. Among other things they develop their own framework DotVVM, which is very easy to use especially if you came from technologies like Web Forms, Desktop or mobile apps, which I definitely did.

Close Project GitHub

RTD - Car Racing Game

I worked on this with three other people. Michal Filo, Daniel Hanák and Vít Neckář. It was my first experience with game development. We had to use Unity, but it was up to us which scripting language. We used C#, because I already had some knowledge of that, and others were experienced in Java.

We all enjoyed the development. I always wanted to try game development, but never had the courage or skills. My role in a team was to develop in game mechanics: car physics, projectiles, Tower AI, shields, targeting and stuff like that.

Later I helped Michal with multiplayer. Unity tools for multiplayer are not really optimized. We decided to take advantage of RPC and make partial computations on client side as well, not just on the server.

Close Project GitHub

AI for Reversi board game

This one was really fun to do. Another school project, college this time. The task was to implement an AI that beat other AIs in Reversi board game tournament. All participants were also students, my classmates. It was challenging to invent something new. Everyone was implementing some kind of minimax algorithm. We had 1 second for computation for each move.

I decided that I will improve the evaluation function. I used a matrix that represented a value of every square. So instead of just counting the captured pieces I also counted with their position. The squares near the corner were ranked with the lowest number for obvious reasons.

Close Project GitHub

EduARd - E-learning platform using augmented reality

EduARd is an E-learning platform. Teachers can create digital presentations with GPS points and quizzes for their students. The platform offers web editor for presentations and mobile apps for browsing, which work offline and bring augmented reality experience.

I successfully defended my bachelor thesis on this project. I really liked this project from the very beginning. Mostly because I have worked with my classmates, all of them are very talented and experienced developers. My role in the project is DevSecOps. I am responsible for designing the backend API, setting up CI/CD pipelines and securing the application processes. I implemented the REST API in .NET Core and documented it with Swagger.

As the project progressed and the backlog was slowly growing, I realized that we need some sort of coordination, even for such a small team. I learned some good practices in TheNetw.org. So, I started organizing issues into milestones and slowly made our project compliant with the agile manifesto for software development.

Close Project Show