- Файл
Олег
Java-розробник
Контактна інформація
Шукач вказав телефон .
Прізвище, контакти та світлина доступні тільки для зареєстрованих роботодавців. Щоб отримати доступ до особистих даних кандидатів, увійдіть як роботодавець або зареєструйтеся.
Отримати контакти цього кандидата можна на сторінці https://www.work.ua/resumes/15387043/
Завантажений файл
Це резюме розміщено у вигляді файлу. Ця версія для швидкого перегляду може бути гіршою за оригінал резюме.
Українська: сторінки 3-4.
Oleg Vakulenko
[
[
For more than 20 years, I have developed several projects of varying complexity. In my work, I
mostly focused on Internet/intranet projects, ie systems that worked on a local network or via the
Internet, with which the interaction took place in a browser.
In all the projects I developed, I independently studied the client's business processes and developed
the requirements that the finished system must meet. I also developed the design and interface of
the product, as well as independently tested all components of the product.
Projects are built on the following stack:
Java - backend;
Javascript + Vue - client-side scripts;
HTML / CSS - markup and web page styles;
Qausar Framework - UI фреймворк для розробки інтерфейсу в стилі Google Material Design;
Firebird SQL - database;
Windows, Debian Linux, macOS - the basic operating systems;
nginx - web server;
Tomcat - application server;
JUnit, Selenium/Selenide, Postman - backend and frontend testing;
Git/GitHub - source code management;
Intellij IDEA - development environment.
For example, I will cite the latest or most complex, in my opinion, projects.
Javenture
https://github.com/javenture/framework
The repository containing the code of our own development was created in recent years and is used
in our own projects. Contains data structures, as well as additional capabilities not available in the
standard JDK implementation. Among the features, I can cite the ORM technology of my own
development for the Firebird database server, which implements its own transaction mechanism
based on JDBC, allows serialization of data (base types, arrays, custom objects), and also has a
system for logging operations and data versioning.
Bookmap
https://devtest1.hr.bookmap.com/
In September 2022, took part in solving a test task (Java) on the Bookmap portal. The task
represented the development of a mechanism for certain functioning of the market, with its own
rules. The peculiarity of the task was that, in addition to the correct implementation of all
components of the trading mechanism, the execution time of the algorithm was also taken into
account, and the program was executed in a limited amount of memory (128 MB). The task turned
out to be multi-level and successful, and most importantly fast, implementation required
optimization of all components. In the process of analysis and development, it became clear that the
most effective solution requires writing low-level code, the need to understand the details of the
internal structure of complex data structures, as well as the need to integrate the necessary additions
into these structures. It was these actions that made it possible to obtain an efficient algorithm,
which received the first place in the test with a result of 160 ms, although there is a dense group of
results that starts with a mark of 300 ms. In the future, I made additional optimizations, but
unfortunately, due to the fact that the measuring test lasted for a very short period of time, the
values on the portal do not reflect the real result.
In 2024, I took part in the second task of the same company. At the time of writing my resume, my
personal result: 26 out of 382. The best result: 80 ms, mine - 180 ms. The required algorithm can
still be improved, but it makes no sense, because due to the peculiarities of the test, such time
intervals are measured with a very high level of error, which can reach 20-30%, which in this case
is fundamental.
360 degree photos and panorama
My own project. There are so-called 360-degree cameras (for example GoPro Fusion), which are
two cameras in a common body, each shooting its own hemisphere. Each of these cameras has a
special lens - fisheye. Photos taken with such a lens have a specific appearance and have a certain
distortion so that each camera can capture images more than 180 degrees. When space is captured
by two such cameras, from each hemisphere, it is possible to obtain an image that combines two
such photos and will cover 360 degrees. From such photos create virtual tours, similar to those that
can be found on Google Maps or, for example, on sites with apartments. My task was to develop my
own algorithm, which will allow you to process raw materials from the camera without using a
standard program. The motivation for creating the algorithm was the need to use better photos in the
internal format of the camera, which the standard program was not designed for. As a result of
studying the subject, I was able to achieve the desired result of comparable quality. In the process of
work I used the formulas of three-dimensional hermetry, algorithms for image processing, finding
key points, color correction, stitching parts with image deformations, etc. I also developed a script
to display the finished panorama (virtual tour) in the browser.
So summarizing what I said, I can say that in the process of working on such projects, I tried to
solve the problems that faced me, taking into account the whole range of issues from task analysis
to implementation, taking into account correctness and productivity, as well as my own
understanding of implementation.
Neolink
Website of the regional computer store. Unfortunately, today the business is closed, due to the fact
that in today's world it is impossible to compete with famous giants. The system was a site itself
that only reflected the current state of the store and which was located on a professional hosting and
intranet system that was physically located in the store and which performed the function of
processing all data. Between the site and the intranet there was a system of synchronization of its
own development, which supported transactions and repeated all the actions that took place on the
intranet, thus constantly updating prices, product availability and the catalog of goods. The price
processing system was constantly synchronized with the suppliers' prices and calculated retail
prices for each item depending on the pricing policy. Among the features of the site was also made
in the style of Google Material Design and was optimized for different screens. It is also possible to
cite the presence of a filter that was able to perform complex filtering of goods and performed it in
real time, which was unattainable when using conventional tools. The possibility of fuzzy
intellectual search of goods by name was also realized, which allowed to obtain a ranked result
taking into account possible errors.
Олег Вакуленко
[
[
Більше ніж за 20 років, мною було розроблено декілька проектів різного рівня складності. В
своїх роботі я здебільшого орієнтувався на інтернет/інтранет проектах, що працювали в
локальній мережі чи через інтернет, взаємодія з якими відбувалась в браузері.
В усіх проектах, що розроблялися мною, я самостійно займався вивченням бізнес-процесів
клієнта і розробкою вимог, яким повинно відповідати готова система. Також мною
розроблявся дизайн і інтерфейс продукту, а також самостійно виконувалось тестування усіх
складових продукту.
Проекти побудовані на наступному стеку:
Java - бекенд;
Javascript + Vue - скрипти на стороні клієнта;
HTML / CSS - розмітка і стилі веб-сторінок;
Qausar Framework - UI фреймворк для розробки інтерфейсу в стилі Google Material Design;
Firebird SQL - база даних;
Windows, Debian Linux, macOS - базові операційні системи;
nginx - веб-сервер;
Tomcat - сервер додатку;
JUnit, Selenium/Selenide, Postman - тестування бекенду і фронтенду;
Git/GitHub - управління вихідним кодом;
Intellij IDEA - середовище розробки.
Для прикладу приведу останні або найбільш складні, на мою думку, проекти.
Javenture
https://github.com/javenture/framework
Репозиторій в якому знаходиться код власної розробки створений впродовж останніх років,
який використовується у власних проектах. Містить структури даних, а також додаткові
можливості відсутні в стандартній реалізації JDK. Із особливостей можу привести
технологію ORM власної розробки для сервера баз даних Firebird, яка на основі JDBC
реалізує власний механізм транзакцій, дозволяє серіалізувати дані (базові типи, масиви,
кастомні об’єкти), а також має систему журналювання операцій і версійність даних.
Bookmap
https://devtest1.hr.bookmap.com/
У вересні 2022 року прийняв участь у розв’язанні тестового завдання (Java) на порталі
Bookmap. Завдання уявляло собою розробку механізму певного функціювання ринку, зі
своїми правилами. Особливістю завдання було те, що на додачу до коректної реалізації усіх
складових механізму торгівлі, до уваги також брався час виконання алгоритму, причому
програма виконувалась в обмеженому об'ємі пам'яті (128 Мб). Задача виявилась
багаторівневою і успішне, а головне швидке, виконання потребувало оптимізації усіх
складових. В процесі аналізу і розробки стало зрозуміло, що найефективніше рішення
потребує написання низькорівневого коду, необхідності розбиратися в деталях внутрішньої
будови складних структур даних, а також необхідність інтегрувати в ці структури потрібні
доповнення. Саме такі дії дозволили отримати ефективний алгоритм, який отримав у
результаті перевірки перше місце з результатом 160 мс, хоча далі йде щільна група
результатів, яка починається з позначки 300 мс. В подальшому мною були зроблені додаткові
оптимізації, але на жаль, через те що вимірювальний тест тривав дуже малий проміжок часу,
значення на порталі не відображають реальний результат.
В 2024 році взяв участь в другому завдання цієї ж компанії. На момент написання резюме
особистий результат: 26 з 382. Найкращий результат: 80 мс, мій - 180 мс. Потрібний алгоритм
можливо ще вдосконалити, проте це не має сенсу, тому що через особливості перевірки
подібні часові проміжки вимірюються з дуже високим рівнем похибки, що може досягати 20-
30%, які в даному випадку принципові.
360 градусні фото і панорама
Мій власний проект. Існують так звані 360 градусні камери (наприклад, GoPro Fusion), які
уявляють з себе дві камери в спільному корпусі, які знімають кожна свою полусферу. Кожна з
таких камер має спеціальний обєктив - fisheye. Фото зняті подібним об'єктивом мають
специфічних вигляд і мають відому деформацію з метою що кожна камера може охопити
зображення більше ніж на 180 градусі. Коли простір знятий двома такими камерами, з кожної
полусфери, то можливо отримати зображення, яке об'єднує два таких фото і буде охоплювати
360 градусів. З подібних фото створюють віртуальні тури, подібні до тих, що можна зустріти
на Google Maps чи, наприклад, на сайтах з квартирами. Моєю задачею була розробка
власного алгоритму, яких дозволить самостійно обробляти вихідні матеріали з камери без
використання стандартної програми. Мотивацією створення алгоритму була необхідність
використовувати більш якісні фото у внутрішньому формату камери, на що стандартна
програма розрахована не була. В результаті вивчення тематики мені вдалося досягнути
потрібного результату порівняної якості. В процесі роботи мною були використані формули
тривимірної геометрії, алгоритми обробки зображень, пошуку ключових точок, корекція
кольорів, зшивання частин за допомогою деформацій зображення і т.п. Також мною
самостійно був розроблений скрипт для показу готової панорами (віртуальний тур) в
браузері.
Отже підсумовуючи сказане можу відмітити, що в процесі роботи над подібними проектами
я намагався вирішувати ті завдання, які переді мною стояли враховуючи увесь комплекс
питань від аналізу задачі до реалізації з урахуванням коректності і продуктивності, а також
власним розумінням ефективності реалізації.
Неолінк
Сайт регіонального магазина комп'ютерної техніки. На жаль, на сьогодні бізнес закритий, у
зв'язку з тим що в сучасному світи неможливо конкурувати з відомими гігантами. Система
уявляла з себе, сам сайт де лише відображався актуальний стан магазину і який був
розташований на професійному хостингу і інтранет-системи, яка фізично розташовувалась в
магазині і яка виконувала функцію обробки усіх даних. Між сайтом і інтранетом існувала
система синхронізації власної розробки, які підтримувала транзакції і повторювала всі дії, що
відбувалися в інтранеті, тим самим постійно оновлюючи ціни, наявність товару і сам каталог
товарів. Система обробки прайсів постійно синхронізувалася з прайсами постачальників і
для кожної позиції розраховувала роздрібні ціни в залежності від цінової політики. Із
особливостей сайт був також виконаний в стилістиці Google Material Design і був
оптимізований під різні екрани. Також можна привести наявність фільтру, який був здатен
виконувати складні фільтрації товарів і виконував це в режимі реального часу, що було
недосяжно при використанні звичайних інструментів. Також була реалізована можливість
нечіткого інтелектуального пошуку товарів по найменуванню, що дозволяло отримати
результат з урахуванням можливих помилок.
Схожі кандидати
-
Java-розробник
Дистанційно -
Java-розробник
Дніпро, Дистанційно -
Java-розробник
Дистанційно -
Программист Java
Дистанційно -
Програміст Java
Чернівці, Дистанційно -
Java software engineer
Київ, Дистанційно