Indicators
- Last project: 3 years back
- Bids in the last two weeks: 7
- Collaboration with clients: 8
- Projects involving arbitration: 1
- Last visit: 10 hours 3 minutes ago
CV
Throughout my professional experience, I have worked with many technologies and projects. I am knowledgeable in frontend and backend development, design creation, UI/UX, database optimization, Linux server configuration, analysis of design flaws to increase sales, and much more. I have done everything from small corrections in landing page layout to creating huge hybrids with CRM systems to solve extremely complex business logic and work with hundreds of thousands of unique visitors every day (on 1 VDS for 10 bucks). If I were to describe all of my experience, there would be too much text for this block. In short, I work with everything I like (not necessarily for work) or what a particular customer needs. Recently, I wrote a Python tool for generating videos with Captions-style subtitles, and using Python + VapourSynth, I made a tool for upscaling 480p videos (DVD discs) using various AI models. There hasn't been a single task that a client has given me that I haven't been able to complete. In my opinion, this is the essence of a Full-Stack Developer. One moment you are working on UI/UX or design, and the next you are writing a webhook to connect to a payment system, the documentation for which you have just read.
My top skills are in descending order:
- PHP: Yii2, Laravel, Yii
- JS: ES6+, jQuery, Angular, React
- Databases: MySQL, MariaDB, PostgreSQL, MsSQL, MongoDB
- Layout: CSS3 (+flexbox, +LESS), Bootstap 3+
- Operating system: I work exclusively on Linux. Distributions: Debian branch (right now the latest version of Kubuntu).
- Additional skills not listed: git, composer, bower, npm, svn, Flash (ActionScript 3 + Flex 4)
Tags
Skills and abilities
Programming
- PHP 19 USD for hour
- HTML & CSS 19 USD for hour
- Data Parsing 20 USD for hour
- Databases & SQL 19 USD for hour
- Javascript and Typescript 19 USD for hour
- Web Programming 19 USD for hour
Services
- Data Processing 19 USD for hour
- Online Stores & E-commerce 19 USD for hour
- Payment Systems Integration 19 USD for hour
- Website Development 19 USD for hour
- Website Maintenance 19 USD for hour
Administration
- Linux & Unix 19 USD for hour
- Software & Server Configuration 19 USD for hour
Portfolio Works
Client reviews
Delivery from the administrator panel
#️⃣ Вступление
Задача была “тестовой”, чтобы просто познакомиться с исполнителем перед началом объёмного сотрудничества.
Перед утверждением условий:
- Предоставил Борису полное ТЗ
- Доступ в Репозиторий проекта
Разработчик сказал, что код в целом хороший и чистый, рассказал о требованиях к больших проектам(все задачи только ему, чтобы другие не писали “г*-код”; если код грязный — ставка больше).
Борис самостоятельно назначил стоимость задачи и срок, как он написал, с запасом. Утвердили.
Проблемы:
1️⃣ Ближе к концу проекта Борис стал требовать доплату, поскольку “потратил больше времени, чем планировал”.
Обозначу, в вопросах доплаты всегда готов идти на встречу:
- часто вношу бонус, если исполнитель действительно добавил новых улучшений(пример: соседний проект с Александром)
- задача оказалась сложнее и исполнитель её недооценил
- все дополнительные задачи идут отдельными проектами за отдельную плату, что можно увидеть по отзывам
Но в данном случае — с выставленными требованиями не согласен по следующим причинам:
1. Борис буквально отписывал почти каждый свой шаг в проекте, а позже рассказывал о себе, его стиле работы. Возможно, это интересно, но рамках мелкой задачи — это излишне, и только тратит наше обоюдное время: наш диалог с 1-ой малой задачей, больше чем диалог с постоянными исполнителями, где 4-5 средних-больших.
Полагаю, что на “монолог” было потрачено больше времени, чем на разработку.
2. Стал конфигурировать и копаться в тех частях приложения, с которыми не связана задача, на что я вежливо указывал.
3. Борис сообщал, что были “Требования вне ТЗ и он ещё реализовал улучшения”.
При уточнение было названо: “Не было инструкции по 2FA, пришлось её изучать и обходить; Не было аккаунта ЮниСендер для теста; Пофикшен баг;”
Но указанное - никак не связано с дополнительными требованиями. ТЗ не изменял. Также:
1) "Улучшения". В ТЗ было указано: необходимо выводить отправленные письма администраторами, чтобы контролировать их содержимое.
В системе уже был лог отправленных писем через Почтовый сервис. Борис, с моим одобрением, просто туда стал записывать письма отправленные администратором, и выводить их содержимое.
Фактически это не улучшение, а упрощение работы самому Борису - ему не пришлось делать Read-функционал.
2) Инструкции были в README, комментариях к параметрам.
☑️ Чтобы упростить работу разработчикам — сделаем ещё несколько отдельных разделов в README для конфигурации.
3) Следовало было запросить тестовые данные у меня. а) В условиях проектах специально прописано — не стесняйтесь спрашивать; б) Обычно я самостоятельно такие тестовые данные кидаю, но на этот раз упустил.
☑️ Добавил в чек-лист перед стартом проекта — выдавать демо-данные, чтобы больше не упускать.
4) Благодарен за фиксацию бага. Но указанный баг тесно связан с серверным окружением Бориса, и даже не в той части приложения, с которой следовало вести работу. Обнаружен он был во временном решении. Фиксация - обычная проверка на существование, причём правкой была затёрта TODO: который помечал временное решение;
☑️ Добавим Docker в проект, чтобы все разрабатывали с одним ENV.
4. Все детали проекта были видны до сотрудничества. Борис сам установил оценку, срок и ещё заложил запас, как сам написал. Я даже уточнял в поддержке за правоту в этой ситуации.
2️⃣ Отношение к работе/качество кода
Борис часто говорит о качестве кода(см. раздел "Вступление", абзац №3). Но о своих ошибках пишет - "Это неважно, это мелочь". Считаю, что такой подход несправедливый.
А ошибки в любом случае нестрашны, и повод поучиться для всех, тем более мы подряжаем тестера для перестраховки.
Но раз на то пошло:
1. Был отключен HTML-Encode в GridView, выводятся RAW-данные без фильтрации(зачем?). Username вводится пользователем, поэтому может содержать код для XSS-атаки(+длинная строки): https://i.imgur.com/ueToBOV.png
2. Чтобы выводить данных о пользователях, используются костыли, вместо связей(relations) БД: https://i.imgur.com/cg1HyEM.png || https://i.imgur.com/wqbMM6P.png
3. Не описан revert миграций, хотя он возможен с помощью dropColumn: https://i.imgur.com/Fx7ywLK.png
4. Жёсткая привязка к ID отправителя к авторизованному пользователю в Сервисе, что делает его непереиспользуемым, если ID нужно указать самостоятельно: https://i.imgur.com/XYrZlU4.png
5. Не используется TypeHinting в GridView, что делает неудобным переименование свойств через "Refactor": https://i.imgur.com/0fj30su.png
6. Раздувание сущности Mail. Фактически ему было привязано 3 опицональных поля, которые есть только в сценарии пользователя администратором: https://i.imgur.com/azhhfpD.png
Вместо того, чтобы сделать отдельную сущность и присвоить ей связь. А если потребуются ещё дополнительное поля для ручной отправки?
3️⃣ Остальное
На простые уточняющие вопросы, касательно "улучшений и задач вне ТЗ", чтобы понять позицию - получил претензии.
1. "Долгая проверка, долгие ответы" - у меня есть свой перечень задач, я не могу реагировать 24/7 и ни от кого этого не требую. А также время потребовалось на уточнение вопросов касательно "задач вне ТЗ" и чтение всего потока сообщений.
2. "Понятно почему над проектом работают столько людей и не задерживаются" - в проекте 2 контирбютора, помимо меня. Один занят другой задачей, второй в зоне Б/Д и испытывает проблемы со связью.
1.8
5.0
Выводим самые продаваемые товары раздела в соответсвующий раздел
5.0
5.0
5.0
The website on yii2
5.0
HTML 5 игры
5.0
Working with the gallery
When I wrote that I have questions how the mobile version is displayed, he replied that the upgrades are already for the dop bone, I clarified how much, after knowing the cost I refused, after that the executor goes to the arbitration, accusing me that I do not agree to pay for the dop work and that I am constantly changing the requirements, bringing a direct speech -
“The customer is constantly changing requirements.Even when everything is done and matches the TZ, he wants more free donations and does not agree to the add-on.I have exhausted the original TZ several times and spent time more times than the result will be paid.”
3.3
Indicators
Total projects:
8
Average rating:
-
4.1
Professionalism4.3
Quality4.4
Price4.4
Contactability4.7
DeadlinesActivity
|
Project
|
Type | Budget | Proposal | Deadline | Added |
|---|---|---|---|---|---|
| 503 USD |
685 USD
|
6 days | 3:19 | ||
| Not specified |
100 USD
|
2 days | 3:10 | ||
| Not specified |
7997 USD
|
60 days | 14 Jul | ||
| 100 USD |
100 USD
|
2 days | 14 Jul | ||
| Not specified |
793 USD
|
10 days | 14 Jul | ||
| Not specified |
571 USD
|
7 days | 14 Jul | ||
| Not specified |
250 USD
|
4 days | 14 Jul | ||
| Not specified |
264 USD
|
7 days | 20 Mar | ||
| 300 USD |
2000 USD
|
20 days | 20 Mar | ||
| Not specified |
50 USD
|
1 day | 18 Mar |