Больше информации по резюме будет доступно после регистрации
ЗарегистрироватьсяБыл на сайте более двух недель назад
Кандидат
Мужчина
Не ищет работу
Йошкар-Ола, не готов к переезду, готов к редким командировкам
Web-программист
75 000 ₽ на руки
Специализации:
- Программист, разработчик
Занятость: полная занятость, частичная занятость, проектная работа
График работы: полный день, сменный график, гибкий график, удаленная работа
Опыт работы 11 лет 1 месяц
Апрель 2014 — по настоящее время
11 лет 1 месяц
ФГБОУ ВПО «Марийский государственный университет»
Йошкар-Ола
Ведущий программист
В общих словах:
1) Создание сайтов с нуля на Yii1/Yii2(fullstack)
- сюда входит разработка и написание как систем тестирования студентов и абитуриентов для нужд университета, так и интеграции с такими системами как 1С(на уровне вебсервисов и OData), СКУД(через TCP и напрямую через обращения к БД СКУДа), а также автоматизация сбора, отображение отчетности и информационных графиков по определенным направлениям деятельности.
2) Поддержка и сопровождение, изменение и правка написанных сайтов на Yii2
- в силу изменчивости требований по отношению к уже написанным проектам, возникают ситуации, когда требуется расширить тот или иной функционал внутри проекта, либо же какие либо изменения, вплоть до кардинально изменяющий бизнес-логику. По этой же причине могут возникнуть ситуации, когда на отображение или обработку данных тратиться слишком много времени. В таких случаях приходиться оптимизировать процесс обработки данных.
Например: имеется дашбоард с большим количеством элементов, таблиц и всякого рода диаграм. Первоначально количество элементов на данной странице было не велико и время обработки было приемлемым, но со временем дашбоард начал обрастать новыми таблицами и диаграммами. В какой то момент отображение страницы в браузере начало занимать слишком много времени. Для решения это задачи было предложено первоначально отображать только шаблон данной страницы в браузере без графиков и данных. И после того как основной шаблон подгрузится, посредством ajax-запросов запрашивать графики и диаграммы в асинхронном режиме. Данное решение позволило ускорить отображение информации в несколько раз.
3) Написание скриптов на python для работы с базами данных
- в данном случае была ситуация, когда требовалось получение данных из СКУДа по TCP-протоколу через вебсокеты. И после получения требовалось обработать полученные данные и сохраненить в отдельную БД.
Также есть небольшой опыт работы с Django на уровне редактирования админки и корректировки отображений для конечного пользователя
4) Обработка(Сохранение), выборка, изменение и удаление данных к в базах данных
- В первую очередь стоит упомянуть что большая часть создания и изменения таблиц производится с помощью миграций средствами Yii2. Следовательно определение столбцов и ключей происходит на этом этапе. После успешного создания необходимых таблиц переходим уже непосредственно к наполнению и обработке. По большей части требуется забрать данные например из 1С и сохранить их в отдельной БД для упрощения последующих выборок необходимой информации. Данный процесс автоматизируется и отдается на выполнение по cron-у. В связи постоянным обновлением и наполненением таблиц(по нескольку раз на дню как минимум) могут всплыть неприятные упущенные моменты при построении таблиц. При возникновении, данные моменты, разбираются, находятся тонкие места например в структуре таблицы или бд в целом, и ищется решение данной проблемы. После нахождения решения вносятся необходимые правки.
Например: В определенный момент выборка из таблицы начала занимать несоизмеримо много времени по отношению к предыдущим периодам(в данном случае к предыдущему дню). Выборка производилась по индексации колонки "N" булева типа(либо 0, либо 1). Проблема заключалась в том, что количество строк со значением 0 в колонке "N" было примерно равно количеству строк со значением 1 этой же колонки. По итогу оптимизатор запросов БД, в данном случае MySQL, игнорирует индекс, если количество строк с одинаковым значением в индексируемой колонке является слишком большим, и производит поиск по всей таблице.
Решение данной проблемы являлось добавление новой индексируемой колонки. Эта колонка хранила дату записи в таблицу, т.к. актуализация данных в таблице производилась ежедневно. После перехода на новый индекс выборка ускорилась в десятки раз.
5) Использование bootstrap(3, 4, 5) и jquery при создании отображений
- Здесь все просто: рисуем красивые графики, сводные таблицы, формы, модальные окна и пр. согласно поставленным задачам.
Навыки
Уровни владения навыками
Обо мне
Пишу в основном на PHP7. Также присутсвует небольшой опыт работы с python(django). В свободное время иногда пишу на ruby для личного пользования.
В последнее время увлекся походами в спортзал. Хочется все таки держать себя в тонусе, образ жизни то сидячий.
Иногда выбираюсь на природу с друзьями, в основном рыбалка, шашлыки, походы с палатками.
Из-за специфики организации в которой работаю, проекты, которыми занимаюсь, замкнуты на внутреннюю инфраструктуру и показать их не является возможным. Если требуется демонстрация навыков, готов выполнить тестовое задание рекрутера, как минимум из спортивного интереса. Интересно же.
Высшее образование
2013
Физико-математический факультет, Прикладная математика и информатика
Знание языков
Повышение квалификации, курсы
2013
Разработчик профессионально-ориентированных компьютерных технологий
ФГБОУ ВПО "Марийский государственный университет", Разработчик профессионально-ориентированных компьютерных технологий
Гражданство, время в пути до работы
Гражданство: Россия
Разрешение на работу: Россия
Желательное время в пути до работы: Не имеет значения