Навыки


Программирование

Языки программирования

Последние два года я пишу преимущественно на Kotlin, поэтому в данный момент знаю его лучше других. C/C++/C#/Java примерно на одном уровне. Я могу кодить на любом из них. Если вам нужна скорость разработки, я буду писать код на Kotlin или C#. Если нужна производительность, я пишу на C++. У меня есть базовые знания GoLang (на нем я сделал свой RestAPI для небольшого проекта). Я могу писать на Delphi и Visual Basic, но мне не нравятся эти языки. Я использую C или ASM, когда программирую микроконтроллеры. У меня есть некоторые базовые знания PHP, без большого опыта (могу сделать модуль для взаимодействия с БД, либо изменить тему Wordpress.)

Алгоритмы

Могу использовать рекурсию там, где это необходимо. Имею представление о графах и деревьях. Умею реализовать алгоритмы поиска DFS или BFS. Есть опыт по реализации MiniMax алгоритмов (в основном благодаря CodinGame).

Сценарии

VBScript/CMD (WINDOWS), BASH/SH/Perl/Python(Linux). Обычно я писал парсеры текстовых файлов для облегчения рутинных задач на работе. Я также использую сценарии для резервного копирования, мониторинга пользователей и сетевых служб..

Android

У меня есть несколько готовых проектов в Google Play (подробнее смотрите в разделе Портфолио). Раньше я писал на Java, но сейчас использую Kotlin, и мне действительно нравится этот язык. Конечно же, я имею представление о жизненном цикле Activity. В последних проектах я использовал Retrofit2, Room, Live Data и SVG анимацию. В текущем проекте использую Dagger2 (он для моего проекта избыточен, но мне нужен был опыт с внедрением зависимостей). В моем следующем проекте я планирую использовать Jetpack compose - новый инструмент от Google

Микроконтроллеры

Мне нравится создавать прошивки для устройств на базе ESP8266 и ATmega, которые я делаю для домашнего пользования. ESP8266 особенно впечатлил меня своими возможностями.

Управление версиями

Сейчас я всегда использую GIT в своих проектах и нахожу это очень удобным. В качестве удаленного репозитория я установил Gitea на своем VPS, и сейчас мне не нужен GitHub, потому что я могу хранить проекты на своем сервере.

Отчеты

Опыт построения отчетов в Fastreport, Crystal Report, and RDLC. Так же приходилось генерировать отчеты с помощью PHP

WebDesign

Я хорошо знаю язык разметки HTML, но практически не использовал фреймворки. Вы можете посмотреть мой лендинг(HTML+CSS+Bootstrap 4), который я сделал для своего приложения. Все разделы сайта, который вы сейчас смотрите базируются на Wordpress, в котором я просто модифицировал стартовую Bootstrap тему для своих нужд. В принципе это весь мой скромный опыт создания сайтов.

Системное администрирование

Виртуализация

VMWare, Hyper-v, VirtualBOX, XEN. Ничего сложного. Я перенес некоторые приложения в Hyper-v, где пользователи работают через RDP из за нехватки бюджета для обновления их ПК. Имею опыт переноса реальных ПК на виртуальные и обратно. Иногда тестирую приложения и операционные системы на виртуальных машинах перед установкой на реальные.

Базы данных

MS SQL Server, MySQL, PostgreSQL, dBase(FoxPro, Paradox), H2. Проектирование баз данных, их обслуживание, устранение ошибок, восстановление. У меня есть хороший опыт создания SQL запросов. При создании триггеров, или сложных вложенных запросов я пользуюсь документацией.

Сети

У меня большой опыт монтажа локальных сетей и объединения сегментов посредством VPN, настройки файрвола, маршрутизации, SSH, DHCP, DNS, RDP, proxy и т.д.

Хранение данных

Я понимаю структуру файловых систем и их особенности (FAT/FAT32, NTFS, EXT2-4, BTRFS, XFS). Я всегда делаю бэкапы на разные носители (конечно же этот процесс автоматизирован). У меня есть большой опыт работы с жесткими дисками - разбивка на разделы, мониторинг состояния, восстановление данных. Есть небольшой опыт настройки RAID

Hardware

У меня есть большой опыт установки, настройки, прошивки, обслуживания и мелкого ремонта, принтеров, МФУ, платежно-справочных терминалов, считывателей банковских пластиковых карт, кассовых аппаратов.

Системы видеонаблюдения

Опыт в монтаже и настройке систем видеонаблюдения.

  • Регистратор + камеры
  • ПК вместо регистратора + камеры
  • Аналоговые камеры (AHD, 960H Analog)
  • IP камеры (Onvif, RTSP)

Операционные системы

Windows

Я работал со всей линейкой этой ОС начиная с Windows 3.11 и до Windows 10, включая серверные системы (2000-2008). У меня большой опыт в установке, настройке и администрировании их.

*NIX

Командная строка - мой друг. у меня есть опыт установки и использования таких ОС, как FreeBSD, Gentoo, Arch, Debian, Manjaro, Ubuntu, etc. Я могу пересобрать ядро под специфические задачи или железо. Сайт, который вы смотрите работает на моем VPS В Debian 10, где я установил и настроил все необходимые службы для работы данного сайта и некоторых других моих проектов.

DOS

Да, я очень хорошо знаком с этой древней системой. Я могу запускать старые приложения в эмуляторах или настраивать их для работы в командной строке Windows, но надеюсь, что эти знания мне больше никогда не пригодятся:)

Языки

Русский

Это мой родной язык, я отлично владею им и постоянно пользуюсь в повседневной жизни

Белорусский

Это официальный язык моей страны и я его прекрасно понимаю, однако у меня нет постоянного опыта общения на нем.

Английский

Я читаю на среднем уровне и прекрасно понимаю любые технические документы, но слушаю и говорю на начальном уровне, потому что у меня не было такой практики.

Французский

Я выучил этот язык в школе. Раньше у меня был уровень B2, но я не использовал его уже почти 20 лет, поэтому я не думаю, что нынешний уровень выше, чем у новичка.

Персональные качества

  • Я всегда выполняю поставленные задачи
  • Решаю проблемы до их возникновения
  • Инициативность
  • Находчивость
  • Устойчивость к стрессу
  • Ответственность

Другие навыки

Проектирование печатных плат

Я иногда использую Proteus, DipTrace, Altium Designer, Sprint Layout когда создаю устройства для домашнего использования. Полный цикл разработки от проектирования до готового устройства.

Средства измерений

В работе и дома я часто использую мультиметр и осциллограф, когда требуется диагностика или ремонт.

— На самом деле у меня есть много знаний в различных областях, но некоторые из них либо поверхностны, либо основаны на опыте (мне нужно было что-то делать, поэтому я изучал это). Абсолютно все невозможно знать, поэтому я ищу работу, где могу уделять больше внимания одной области, чтобы стать настоящим профессионалом в ней. Однако если вам нужен специалист широкого профиля,я готов обсудить этот вариант.