I have more than 10 years of experience in both managing developers and developing complex web applications myself. Furthermore, more working remotely (in teams, not as a freelancer) makes me think that remote work is the future of development organization, as not only it allows effective time management, but also encourages stricter and more efficient communication.
At every company that I worked, I tried to stay true to my core principles: clean architecture, well-organized code, clear, respectful and honest communication between team members. At every work place I showed initiative to improve the process: introduced automatic testing, code style guides, code reviews, improved management of requirements and tasks.
The more you know, the better you understand that there is a lot more to learn. I always strive to learn new things: read books and try out new technologies.
GENERAL PROGRAMMINGExcellent understanding of OOP principles, extensive knowledge of design patterns, refactoring strategies. Good knowledge of functional programming principles. Understanding of web security attacks and counter measures.
MANAGEMENT OF DEVELOPERSLots of experience in leading teams consisting of backend and frontend developers (management of requirements, code reviews, knowledge sharing, writing of documentation, establishing of internal standards, time estimate calculations, project flow management). Familiar with most agile development methodologies.
PHPZend Certified PHP 5.3 Engineer, I started working with PHP a long time ago and was very happy to see how it matured through the versions. Symfony, Doctrine, Twig, Slim, Wordpress (plugin creation), wide range of tools (Composer, PHPDocumentor, CodeSniffer (including writing of custom sniffs), Xdebug (debugging and profiling)), web sockets with Ratchet
DATABASESExtensive MySQL experience (database design, normalization, denormalization, optimization), SQLite for mobile applications, some production experience with Cassandra.
HTML/CSSGood knowledge of HTML/CSS specs and advanced CSS3 techniques for cross-browser responsive layouts. I especially enjoy working with SASS and BEM. Extensive experience with Bootstrap 3.
TESTINGPerfect understanding of testing principles and patterns, PHPUnit, Selenium, Symfony’s web tests. Experience in using Gemini for visual testing.
VERSION CONTROL SYSTEMSExperience in working with Git, Mercurial, Subversion, including writing of hooks
ANDROIDExperience in both native (Java,) and Cordova development: 2 published apps
OTHER TOOLS & SKILLSGood understanding of web design and UX principles. Some SEO experience. Daily Kubuntu user, comfortable with console, configuration of servers and apps. Memcached, Sphinx, ElasticSearch, various APIs.
- Initiated and lead migration to new code architecture based on clean architecture
- Code reviews and mentoring
- Development of more complex system modules
- Improving the existing asynchronous (AMP) backend written in PHP
- Creating new microservices with Kotlin
- Developed and improved many major parts of the main company portal.
- Took initiative in introducing development workflow improvements: unit and functional testing, code reviews, stricter requirements management.
- Introduced several important system design related and methodology related solutions: BEM, improved Doctrine query builders, following of Symfony’s recommended best practices, etc
- Helped conducting job interviews for new developers and participated in the selection process.
- Helping and mentoring other developers.
- Top performer (most story points completed and most commits), top reviewer (46% of all-time team review comments are mine), employee of the quarter in 2019
- Designed and implemented a PHP framework for 3 large projects. The framework is still used by the remaining team even for new related products.
- Introduced development workflow improvements: unit and functional testing, time estimates, code reviews.
- Initiated and implemented transition from requirements management in unstructured documents to a newly created requirements management system.
- Helping, managing and mentoring other team members.
- Job planning and team management
- Assistance in sales and client support
- Programming of more complicated system modules
MASTER OF SOFTWARE ENGINEERING
BACHELOR OF COMPUTER SCIENCE
BABYXPERIENCEMy first Symfony project - a gamified baby journal version. Currently it's offline, but all Symfony parts were learned from here.
PIXEL ART PARTYA party game with Cordova and Angular, not published at the moment, but fully functional.
BB WORKOUT LOGJava Android workout tracker, which I use myself several days per week.
FLEXIBLE INTERVAL TIMERJava Android interval training app which uses parsed text files for timer setup.
CALENDARSince I like working on my productivity, having a customizable calendar which I have full control over was a must. Mobile-friendly, with push notifications, built on Slim.
TEXT TREE GENERATORA very simple ASCII text tree generator tool built to make writing documentation easier.
SUBTITLE DOWNLOADERWritten in Python to help me to get a little bit deeper into this language.