Junior Python-разработчик
Контакты
Ищу работу Junior Python-разработчика по направлению backend-разработки.
Удобный формат работы: удаленный.
В программировании и разработке больше всего привлекает непосредственность взаимодействия между разработчиком и его кодом и логика во всем, от архитектуры и оценки качества кода до реализации конкретных функций в библиотеках.
В работе гораздо больше нравится работать с логикой и структурой работы программ, поэтому большой интерес вызвало направление backend-разработки.
За 8 месяцев завершил 10-месячные курсы на платформе Хекслет "Python-разработчик" и "Аналитик данных", начал обучение по направлению "Frontend-разработчик".
Фундаментальные
- Алгоритмы и структуры данных
- ООП
- HTTP
- REST API
- SQL (PostgreSQL, SQLite)
- NoSQL (MongoDB)
- RegExp
Прикладные
- Веб-фреймворки
- Flask
- Django
- FastAPI
- ORM и адаптеры
- Django ORM
- SQLAlchemy
- Motor
- psycopg2
- asyncpg
- aiosqlite
- SQL
- JOIN (LEFT, RIGHT, INNER, FULL OUTER)
- GROUP BY
- Подзапросы
- Оконные функции и форточки
- CTE/VIEW
- Ad-hoc запросы
- Асинхронные инструменты (основы)
- asyncio
- aiohttp
- aiofiles
- aiogram
- Инструменты аналитики
- Pandas
- Seaborn
- Plotly
- Dash
- Matplotlib
- NumPy
- Apache Superset (включая Preset)
- Тестирование
- pytest
- unittest
Хекслет (2023)
Данные проекты выполнены с прицелом на будущую профессиональную деятельность, и затрагивают весь путь разработки программ с нуля до деплоя.
Task Manager
Веб-сервис для организации и менеджмента задач между зарегистрированными пользователями. Каждая задача должна иметь определенный статус, исполнителя и, опционально, метки (m2m). Весь контент создается самими пользователями с возможностью изменения. Статусы, метки и пользователи, связанные с задачами, недоступны для удаления.
Полученные навыки
- Создание шаблонов в Django Templates с использованием bootstrap5;
- Работа с Django ORM, построение архитектуры моделей;
- CRUD в Django;
- Регистрация, аутентификация, менеджмент пользователей в Django;
- Деплой на PaaS, CI с БД;
- Трекинг ошибок в Rollbar;
- Работа с фильтрами посредством django-filters;
- Создание локализаций i18n.
Стек
ЯП и основные модули: Python - Django, python-dotenv, urllib, psycopg2, django-bootstrap5, django-filter, rollbar.
Качество кода: flake8.
Тесты: Workflow Hexlet, unittest.
Деплой: render.com .
Page Analyzer
Веб-сервис для проверки сайтов на заполненность метаданными.
Полученные навыки
- Работа с HTML и CSS;
- Работа с HTTP-запросами;
- Работа с SQL (PostgreSQL);
- Работа с переменными окружения;
- Парсинг;
- CRUD во flask;
- Деплой на PaaS.
Стек
ЯП и основные модули: Python - BeautifulSoup4, dotenv, flask, os, psycopg2, requests, urllib (urlparse), validators.
Качество кода: ruff.
Тесты: Workflow Hexlet.
Деплой: render.com .
Difference Generator
Консольная программа, формирующая файл, описывающий различия между 2-мя файлами с учетом вложенности. Работает с файлами форматов JSON и YAML, генерирует вывод в 3-х стилях.
Полученные навыки
- Рекурсивных обход древовидных структур данных;
- Работа с аргументами командной строки при вызове, создание cli-утилиты;
- Строгий дизайн кода;
- Покрытие кода тестами;
- Работа с файлами.
Стек
ЯП и основные модули: Python - argparse, json, PyYAML.
Качество кода: CodeClimate, wemake-python-styleguide.
Тесты: Workflow Hexlet, pytest.
Brain Games
Набор математических мини-игр, реализованных в консоли.
Полученные навыки
- Настройка виртуального окружения;
- Работа с Git;
- Основы организации кода;
- Работа с импортом сторонних и собственных модулей;
- оптимизация работы через Makefile.
Стек
ЯП и основные модули: Python - random.
Качество кода: CodeClimate, flake8.
Тесты: Workflow Hexlet.
Hyperskill Academy (2021)
Данные проекты были выполнены из личного интереса, не обладая систематизированными навыками программирования, и ставили целью обучиться работе с конкретными модулями и понять принципы работы тех или иных приложений. Планирую рефакторинг в соответствии с полученными на платформе Хекслет знаниями об архитектуре кода. Ниже представлены наиболее интересные проекты.
Web Scraper
Консольный веб-скрейпер (реализован для конкретного сайта). Получая адрес страницы поиска, количество страниц поиска, которые необходимо пройти, и жанр статей, сохраняет их тексты в файлах, озаглавленных по аналогии с названиями статей, сортируя по папкам-страницам поиска.
Навыки и стек: Работа с файлами, os, requests, BeautifulSoup4.
Static Code Analyzer
Анализатор качества кода, осуществляющий проверку по некоторым базовым стилистическим ошибкам:
S001 Too long
S002 Indentation is not a multiple of four
S003 Unnecessary semicolon
S004 At least two spaces required before inline comments
S005 TODO found
S006 More than two blank lines used before this line
S007 Too many spaces after ...
S008 Class name ... should be written in CamelCase
S009 Function name ... should be written in snake_case
S010 Argument name ... should be written in snake_case
S011 Variable ... in function should be snake_case
S012 Default argument value ... is mutable
Навыки и стек: Обход вложенных файлов в заданном пути, Regexp, os, ast, re.
Data Analysis for Hospitals
Учебный проект по работе с датасетами, нормализацией данных, статистикой, визуализацией на примере данных больниц.
Навыки и стек: Работа с данными, pandas, matplotlib.
Key Terms Extraction
Программа поиска ключевых слов по тексту на основании частоты, части речи, TF-IDF методов.
Навыки и стек: Основы работы с естественным языком, nltk.
Open Source (2023-2024)
Hexlet Friends
- Создал новый шаблонизированный лендинг;
- Добавил тесты;
- Добавил таблицу сравнения вклада конкретного участника с другим в зависимости от временного периода.
Опыт
- организовывал и был наставником проектной деятельности для учащихся старших классов с применением современного оборудования и IT-технологий;
- проводил занятия в качестве наставника в рамках направления "Биоквантум";
- участвовал в качестве наставника и преподавателя в областных и муниципальных тематических мероприятиях, хакатонах для детей и молодежи;
- выступал экспертом в муниципальных и областных конкурсах школьных проектов.
- проводил исследование влияния модифицирующих добавок на основе комбинированных углеродных наноматериалов на структурные и физико-механические характеристики эпоксидных композитов;
- расшифровывал данные КР- и ИК-спектрального анализа, рентгеноструктурного анализа, ТГ-ДСК кривые, результаты прочностных испытаний и испытаний на электропроводность;
- представлял результаты исследований посредством участия в конференциях (в т.ч. международного уровня) и опубликования статей в журналах, индексируемых в т.ч. РИНЦ, Scopus и Web of Science, а также входящих в перечень ВАК.
Образование
Свободно владею английским языком
Проживаю в городе Тамбов
Большую часть профессиональной деятельности занимался наукой в сфере нанотехнологий и наноматериалов. Помимо экспериментов работал с данными анализа, как своих материалов, так и активно помогал коллегам, находя зависимости.
Помимо разработки логики веб-приложений большой интерес вызывает анализ данных, Data Science и ML. Планирую расширить свои знания и навыки в этой области и, возможно, перейти на профессиональный уровень.
Мне нравится узнавать и пробовать новое в своей деятельности.