Yuriy Belenko Web Developer
Russia,
Achievements
- Top contributor to open-source OpenAPITools/openapi-generator project. More than 50 merged pull requests.
- Author of a few open-source PHP packages: OpenAPI Data Mocker, SMSGorod API Client.
- Ex "top rated", now banned freelancer on UpWork.com due policy from (related to contractors located in Russia and Belarus). 32 completed jobs with average feedback rating 4.92 of 5.00.
Career
- Fullstack Developer at AO Bars Group (Russia)
- Fullstack Developer at Leading Internet Solutions(Melbourne, Australia) -
- Freelancer at UpWork.com -
- Freelancer at fl.ru -
Frontend Skills
React ES6 TypeScript Redux Bootstrap5 Webpack
Backend Skills
PHP8 Node.js PostgreSQL MySQL PHP Slim4 Docker API Development
Youtube Video Intro
Portfolio
It's not a secret that portfolio is a key part of resume for a software engineer. Like other developers I faced an issue when I cannot show my best works because of NDA or copyrights restriction. Beside, web development evolves very fast and jobs that I made few years ago doesn't make sense now. That's why I don't see any reason to describe all my jobs here. Let's focus on latest project instead.
Quarantine Pass System
As you already guessed by title my latest project named "Quarantine Pass System". It was developed specifically as portfolio item. The major goal of this project was to show "public API first approach". In other words we spend most of time on solid API schema with proper documentation. I think that in a few years most of web services will provide public API. We live in a time when any device can be integrated with popular services and it's possible because of two things: internet and APIs. Connect a fridge or a kettle to a web service via API sounds weird right now, but use native mobile application which calls API to retrieve data is pretty common already.
The second goal was to create multilingual website where texts translations are completely separated from a source code. It's a big advantage when translators can edit texts directly because they usually have no coding skills.
It was also important to show my strongest skills in one project. I used OpenAPI 3.0 schema to describe API with additional tools OpenAPI Generator and Swagger UI. Frontend stack contains Webpack, NPM, ReactJS, Redux, Format.js, Bootstrap4 and FontAwesome. Server stack: PHP 7.3, Composer, Slim4 micro framework, MySQL.
Frequently Asked Questions
- What projects you want to be a part of?
- I would love to develop public API because that's what I think is my specialty right now. While I'm more interested in backend jobs I'll consider frontend too(ReactJs).
- What projects you don't like?
- I reject any offer related to spam machines, malware, everything illegal. Bitcoins - no, sorry. Bets, gambling - hell no! Almost forgot, websites with WordPress CMS - too easy for me.
- Can you create UI design?
- No, I'm a coder. I don't have connections with web designers and I'm not interested in that kind of jobs at all.
- How many hours a week you can spend on our project?
- I don't like part time jobs, when the offer is right I join full time. I can work overtime once in while.
- Do you have an agent or you're independent contractor?
- I'm independent contractor, there will be no extra fees when you hire me. If somebody else tries to sell my service, please let me know.
- Do you consider job offer with relocation?
- Not sure that I want offer with relocation. But it's much easier to me because I'm single.
- Are you able to learn new framework/library?
- Sure, I think that senior software engineer without knowledge of specific framework is more useful than junior which used that framework before.
- Why this web page is so simple? Doesn't seem like you're good developer.
- This page has been made with Bootstrap4 and pure html/js, because I don't want to spend too much time on it.
- What is your hourly rate? Would you join startup without salary but stock options?
- My hourly rate starts from $25 and depends from job position. Startup sounds cool, but I'm in the middle of house purchasing right now and cannot afford to work without salary.
- Have you ever missed a deadline?
- Frankly, yes. I do understand how painful it can be for employer. Usually it happens when I'm not satisfied with result of my work and I want to raise code quality.
- How do you do testing? And what do you think about this? How would you improve QA?
- I'm a big fan of TDD and I try to convince my employers that unit tests is important part of development. However there are projects where unit tests are absolutely useless, for instance serverless apps without business logic.
- What are some of your best soft skills?
- I guess my english level, it's hard to find developer located in Russia with decent english. Beside that I've completed almost 100% of projects I worked on. Let's call it perfectionism and spirit to finish a job.
- Can you describe your workflow when you create a web page or web app?
- Sure. My usual project contains user authorization process, so job should be divided into two parallel parts(frontend and backend). When I'm working alone and my employer wants to see progress ASAP I start with frontend app prototype not connected to real server. If workflow is completely my decision then I start with server because it's easier to connect forms with server when API methods are final and won't be changed.
- What’s your favorite programming language, and why?
- Hmm, it's hard to say, I used JavaScript, PHP, Java, ActionScript3 on a regular basis. They all aren't perfect. I like JS ES6 very much but it becomes so short that it loose readability. And I'm the person who prefer
(isRegistered === false)
over(!isRegistered)
. PHP7 feels ok finally especially with new type hinting. - Explain how you optimize and reduce web application load time.
- Webpack helps to compress assets(JS, CSS, images). Most of time I create SPAs which loads only required parts of data from server when user navigates through the app. Usually that's enough to get high Google rank.