Zdeněk Skulínek

Software and Web developer
I was just 8 years old when got my first ZX Spectrum computer for my birthday. It had one subtle but essential feature that computers no longer have. A player had to write a one-line program to start the game. It made me experiment, and soon I found that writing programs and games is more fun than playing. I tied my life to computers. I worked as a programmer for reputable companies. As I got older, I realized I wanted more.

As you all know, there are three platforms used to create mobile apps – iOS, Android and mobile web, and all three have different languages and libraries to achieve the same effect. Because of the pressure in my previous job to speed up the development at the expense of quality, and no serious attitude from the management, hence, no joy, I decided to go my own way.

My projects are mainly intended for industries, telecommunication and media.

What I'm doing

Embedded graphical user interfaces in C++ and Qt library
Desktop applications for Linux, Windows, and Mac in C++ with Cocoa, Qt, .NET libraries
Mobile apps for iOS and Android in Kotlin, Java, Objective-C and Swift
Low-level cross-platform graphics applications and games in C++ and openGL library
3D and VR applications and games in C++ and Unreal library
HTML coding, frontend in HTML, Javascript, CSS with JQuery and Bootstrap libraries
Backend in PHP, Laravel, Nette frameworks, PostgreSQL, and MySQL databases
Signal processing in C++, Matlab languages and openCL library
HTML games and thick web clients in C++ and Webassembly
Fast Web applications in C++ for Apache and IIS
User-friendly
approach
Software development is complex by nature. Programmers joke that any code bigger than 10 lines contain at least one error. There are certain technical and non-technical problems in the development of each application that needs to be solved. User-centered approach and thorough communication is the best way to solve these problems. Creating software requires close cooperation between the client and developer.

Task types

Parallel, multithreaded, and embedded apps
Web apps
Mobile apps
3D and virtual reality apps
Solution analysis
UX and UI design
Repair and service
Maintenance
Automated tests
Manual tests
These applications usually run on weaker hardware, hence, I pay attention to the code efficiency. If I reduce the required processor performance by half, I can save the client thousands of euro. These projects usually require maximum reliability, so automated tests are essential.
I pay particular attention to responsiveness. I personally support the resolutions from 320 pixels to 4K pixels width. Cooperating with UI designers, I create at least one small animated detail on each page that brightens it up.
Performance efficiency associated with battery life is the most important for mobile apps. I optimize features of the operating system using third-party libraries. The client can easily control the app on their phone.
Creating games and virtual reality is particularly enjoyable, it's more fun than using it. Even the design of my new office considers a place to play and test VR applications.

I offer a discount on new VR projects.
An established solution is always better. It helps estimate the complexity of the project and the date of its completion much easier. But there are cases where solution requires research and innovation. Such projects are more welcomed, and I offer a discount on them.
I'm not a designer myself, but I thoroughly acknowledge UX/UI approach. When creating applications, I work with an excellent UX/UI designer Ksenia. As you can see from our portfolio, this cooperation is very successful.
Feel free to contact me even if you already have your app, but want to edit or fix its errors. However, I must warn you that learning codes made by other programmers is time-consuming, and it's always recommended to work with one programmer or a team throughout the whole process.
The pain of programming the application does not end with its birth. IT world, market, and your clients are in the process of constant change, operating systems endlessly change to such extent that they need a developer's intervention. Continuous maintenance is the best way to keep the performance of your application at its best.
It is a good practice to check a program performance after writing a part of code. This can be done by a simple program execution with some parameters (standard and extreme values). Ideally, however, is to do this after every modification. And that's what automated tests are for.
The basis for manual tests is the client's assignment. The tester compares a new application with customer's requirements and tries to find errors and conflicts. This should ideally be done after every modification of the code.

Why choose me

Individuality

Effective planning
Project management software helps me track and control projects. Scrum, Kanban, Timetracking apps increase effective planning and prioritization of tasks.
I know what I'm doing
I have already completed 25 successful projects. That's over 20 years of programming experience.
I follow deadlines
I don't promise anything that I can't do and don't set unrealistic dates. I meet deadlines even in the case of fixing other people's code, which usually requires more time.
Fair approach
What we have agreed on really matters. If the project must be completed as soon as possible, and I promise to start immediately, I'll start without delay. You can also be sure that communication between us will not stop due to any possible problem.
Responsible approach
I promise to work on your project only if I have a capacity to do so. Nobody would like to find out that the contractor has started the project only two days before its submission.
We will understand each other
I can speak English and Czech, which is not surprising for an IT specialist. But I can also communicate with you in Ukrainian, Russian and Turkish.
Open discussions
Many cups of coffee and thorough discussion of all your wishes and requirements together with possibilities of their realization are guaranteed. Good vibes are guaranteed too.
Flexibility
Each project has its assigned time. If a client with a project I maintain reaches out to me, I always have time for it.

Professionalism

Meeting all the requirements
Learning and using the best world practices helps me avoid many problems. This not only speeds up the development, but the application itself changes into a safer, more reliable and more modifiable one.
Constant learning of modern technologies
I particularly care about the use of new technologies and pleased by the customers interested in innovations. And I will reward them with a discount.
All versions of your project are under control
I use GIT for clients' software and my own projects. Upon the client's request, I can provide any version I created during our cooperation.
Thouroughness as a fundamental feature
I never settle for the first idea I come up with. I will rewrite parts of the code as many times as necessary until it shows the best performance.
Effective code
The code is a reflection of the task. It must meet the requirements described in your assignment.
Upgrade-safe modifications
In case we agree on the use of auto-update frameworks (Wordpress, PHPBB), there are techniques that are resistant to version change (independent modules, plugins, child themes).
Innovative ideas and improvements
During the development process, I will be happy to contribute to your project. But I do not implement ideas without your prior approval and eventual signing an addendum to the contract.
Unknown codebases
The ability to read and understand someone else's code is my strength. After a very short time, I can make qualified changes in the code.

Turnkey project realisation

1
Contact me
2
Get a rough
price estimate
3
Decide on realisa-
tion and agreement
4
Specify
the task
5
Project
planning
6
Work
initiation
7
Project
delivery
8
Declaration of
project completion
Call or text here +420 222 360 240
or
Describe your project in a few words, add requirements, and feel free to add some images.
Get an email on how the project can be realized, including rough price estimate and realization time for each solution.
Decide whether or not you'd like to cooperate with me. If yes, 50% of the total project cost is required as a deposit. Next step is signing a general development services agreement.
It's perfect if you already have accurate specifications of what to create. But usually we create an assignment plan together. This will serve as a basis for additions to the general contract, as well as the basis for testing. It's also necessary in case of possible disputes.
After approving the assignment, we can schedule all the stages of project realization. It can take some time, but we'll know exactly how much the project will actually cost and when it will be completed. You will also know whether we are in due time or late.
At this point, I will start the project realization. Until this time, you can decide whether or not to give the project a green light. After this, it will be difficult to step back.
Get the finished project in a trial mode before the deadline. However, many projects cannot be tested in a real environment. Therefore, some problems may appear, and we will have to work in very close cooperation.
Only when the project is deployed, tested, meets the criteria written in the exact assignment, and the possible problems in the trial period are solved, we will declare the project completed. You will get the source code and invoice.
Ready to make the leap to change?
Call or text here +420 222 360 240
or
write me here
Ready to make the leap and and see all your ideas realized?