Выполняю задачи качественно и в срок. Уделяю большое внимание пониманию архитектуры проекта и его code style, для написания наиболее чистого и понятного кода. Люблю работать в команде. Стараюсь помогать новым коллегам адаптироваться, отвечать на их вопросы. По возможности пытаюсь улучшать среду вокруг тех, с кем работаю - будь то создание понятного pull request’а, читаемого кода или небольшого скрипта для облегчения жизни при работе с частыми задачами.
Помимо iOS разработки интересуюсь созданием игр с использованием фреймворков Metal и SpriteKit, а также игровых движков вроде Godot.
Внутренняя Open Source библиотека компании LeadKit
Обязанности на проекте: Реализация решений для использования разработчиками на проектах внутри компании. Решения писались на основе опросов разработчиков, их болей и потребностях.
Разработанные API:
– DSL для настройки внешнего вида UIView: удобный интерфейс для конфигурации сущностей UIView, позволил уменьшить затрачиваемое на верстку время в среднем на 25%.
– Placeholder API: модуль для показа «заглушек» в приложении. Использует DSL для настройки внешнего вида и позволяет без настройки текста и картинок получить в считанные минуты заглушку на полный экран или загружаемую из сети картинку.
– Skeletons API: удобный показ скелетонов без дополнительных настроек в 2 строчки кода. Разработчики Licard’а оценили гибкость настройки и кастомизации.
– Deeplink API: модуль решающий проблему обработки deeplink'ов на проекте в 3 простых шага. Оценка на данную задачу на новом проекте снизилась в 3 раза, благодаря данному API.
– WebView API: базовая реализация WebView, для получения более удобной настройки внешнего вида и навигации. Данная API помогла увеличить скорость доработок по приложению Согласия Страхования, мигрировавшего на WebView.
– Alerts API: модуль для показа алертов. Позволяет работать как со стандартными алертами, так и с кастомными, что сильно помогло на одном из проктов.
- TILogging API: API для экспорта логов с устройства. Список логов можно легко просмотреть прямо с устройства при потряхивании устройства. API помогает в решении тяжело воспроизводимых багов.
Приложение «Согласие Страхование»
– Стек: RxSwift, Realm, Alamofire
– Архитектура: MVVM
– Обязанности на проекте: Под данным проектом понимается сразу 4 мобильных приложения. Задачей было полностью настроить их сборку на CI, мигрировать на xcode 14, заниматься декомпозицией, оценкой и реализацией новых задач, поступавших от заказчика.
– Результат работы: Настроил работу fastlane, сборку на CI. Принимал участие в каждом из последних релизов каждого из проектов (поднимал версию, отправлял на ревью в Appstore Connect). Расширил функционал приложений и отвечал за фикс старых багов, чтобы сделать приложение более комфортным для пользователя.
Разработка приложения интернет магазина для животных
– Стек: Combine, SnapKit, Alamofire
– Архитектура: MVP
– Обязанности на проекте: Разрабатывать экраны с нуля, внедрять новый функционал, проведение code review.
– Результат работы: Создал огромное количество новых экранов, внедрил аунтификацию в приложение по биометрии, внедрил библиотеку YandexMapKit и реализовал экран с картой и кластеризацией пинов на ней, довел вместе с командой проект до финального состояния MVP.
Мобильное приложение «АЗС Лукойл»
– Стек: NotificationCenter, RxSwift, SnapKit, Alamofire
– Архитектура: MVVM
– Обязанности на проекте: Поддержка разработки, проведение code review.
– Результат работы: Помогал разработчикам реализацией API для решения их продуктовых задач, брал на себя необычные баги, помогал мигрировать проект на Xcode 14.
Игра змейка для macOS, запускающаяся в Menu Bar. Написана на SwiftUI. Проект создавался для получения опыта разработки под macOS и тестирования архитектуры MVVM.
Движок для macOS для рисования примитивных геометрических объектов. Проект написан на SwiftUI и создавался для более глубокого изучения возможностей SwiftUI на macOS.
Библиотека для парсинга аргументов командной строки. Создавалась для ускорения и повышения удобства разработки swift скриптов.
редактор файлов с
расширением .plan. Синтаксис был продуман с нуля вдохновляясь языком разметки
редактор также позволяет возможность графического представления содержимого plan файлов
Участник студ конференций в 2020 и 2021 годах со своими проектами