Программист в госкомпании: уверенная стабильность или «непробиваемая бюрократия»?
Максим Епихин пишет веб-приложения в государственной организации. Он рассказал, чем ему нравится работа на государство и кому она подойдёт.
 
 

Максим Епихин
об эксперте
Максим Епихин — PHP-разработчик. Вдохновляется природой и отдыхом за городом. Любит хоррор-сериалы и геймдев, ведёт канал на YouTube и блог maximepihin.ru.
С раннего детства мне не нравились правила игр: всё казалось банальным и неинтересным. Я хотел придумывать свои правила. А когда познакомился с компьютерными играми, то загорелся идеей создать свою.
Как я попал в веб-программирование через игры
В школе я собрал на Construct Classic 2D-игрушку наподобие Mario — про путешествие жирафика, который ищет дом. Потом создал ещё две игры, но это было хобби, а не серьёзная разработка. Я показывал проекты друзьям, мы их обсуждали и обменивались идеями.
Позже один из друзей тоже увлёкся геймдевом и рассказал мне о движке Unity 3D. Я сделал на нём несколько 3D-игр с ландшафтами, а для одной даже решил создать сайт — так и познакомился с вебом.

Сначала я изучил вёрстку на чистых HTML и CSS, а потом приступил к программированию на PHP и JavaScript. Сайт, который я сделал, понравился одноклассникам, и меня попросили написать похожий. Я стал пилить сайты для лабораторных по информатике и зарабатывать первые деньги на веб-разработке. А уже в универе создал сервис «Шаблонджер», на котором студенты создавали и размещали свои сайты.

Так я полюбил веб и решил развиваться в этом направлении. Мне по душе пришёлся бэкенд, поэтому я серьёзно взялся за PHP. Обучение проходило не гладко: я много раз забрасывал, возвращался к геймдеву и обратно. Но когда понял, что в вебе можно хорошо зарабатывать, начал искать работу.
Как я устраивался в ФГАНУ ЦИТиС им. А. В. Старовойтова
Когда в ноябре 2018 года я возвращался домой с очередного собеседования, мне позвонили из ФГАНУ ЦИТиС им. А. В. Старовойтова и пригласили на интервью. Я как раз находился в 20 минутах ходьбы и сказал, что готов прийти хоть сейчас.
Собеседование пролетело довольно быстро — в отличие от предыдущих, где нужно было пообщаться с HR, пройти интервью по софт-скиллам, а в финале встретиться с техлидами — беспощадными «вершителями судеб». В ЦИТиС тоже много умных и опытных разработчиков, но общаются они гораздо дружелюбнее. Мы сразу уселись за большой стол и провели общую беседу с HR, ведущими программистами и техлидом. У меня спрашивали, что я умею, какое есть образование, дипломы и сертификаты. Затем проверили знания в PHP и базах данных и посмотрели портфолио.
Почти сразу мне предложили работу, но я попросил пару недель на ответ — был ещё оффер из Roistat, поэтому хотелось спокойно подумать. Как вы уже догадались, я выбрал ЦИТиС — уж очень понравилась дружелюбная атмосфера на интервью. Несмотря на крепкие скиллы, мне сначала предложили должность с минимальным окладом — чтобы посмотреть, как буду справляться.
Мой отдел разрабатывает веб-системы по госзаказам. Поначалу меня пугал масштаб проектов, сложность и обилие legacy-кода, поэтому уже спустя три дня я захотел уволиться. Но, как известно, сдаются только слабаки, поэтому я стал расспрашивать начальство, других разработчиков и потихонечку втянулся в проект, а позже стал за него отвечать. Мне понадобилось два месяца, чтобы привыкнуть к процессам — потом стало гораздо проще.
Классическое образование vs настоящая работа: какие знания пригодились
Я окончил бакалавриат и магистратуру в РЭУ имени Плеханова. А потом поступил в аспирантуру на единственное бюджетное место. С точки зрения программиста знания, которые я получил в университете, не пригодились на работе. Зато они помогли мне как начальнику, аналитику и просто в жизни. Я стал думать более структурно и логично.
Мы изучали управление информационными системами и консалтинг в IT. Сейчас проходим системный анализ, управление и обработку данных. Полноценной разработки ни на одном предмете не было — она не входит в учебную программу. Зато на «Математическом обеспечении» ребята, кажется, кодили днями напролёт. Но туда было сложнее поступить.
Я пошёл в магистратуру и аспирантуру, чтобы вовремя получить все нужные бумажки и не попасть в армию. Я не питал особых надежд и понимал, что ничему новому меня там не научат. На семинарах мы рисовали схемки BPMN и ERD, а всё, что нужно для работы, я изучал самостоятельно.
Бесполезно пытаться освоить разработку без сильного желания учиться. Возьмите заведомо непосильный проект, который не сможете выполнить с имеющимися знаниями. Тогда вы будете вынуждены изучать новые технологии и библиотеки. Так я осваивал PHP, объектно-ориентированное программирование и шаблоны проектирования.
Я хотел написать с нуля систему блога. Учился по YouTube-каналам WebForMySelf и урокам Дмитрия Елисеева, советам и материалам из свободных источников. Потихоньку у меня складывалось цельное представление о веб-разработке. Да, при таком подходе придётся миллион раз переписать проект, но будьте уверены: после каждой итерации он будет становиться лучше. Конечно, если вам это нужно.
Считаю, что найти работу можно с обычным стеком:
- HTML — язык разметки, на котором создают структуру веб-страниц;
- CSS — каскадные таблицы стилей;
- JavaScript — язык фронтенд-разработки, рекомендую учить по javascript.ru;
- PHP — скриптовый язык для бэкенда. Учить можно по официальной доке — она у языка довольно подробная.
Изучите операторы, циклы, основы ООП и работу в связке с JavaScript. Ещё нужно хотя бы на базовом уровне понимать, как работают HTTP-запросы, уметь их отправлять и получать. Остальные инструменты можно освоить уже в процессе работы.
Если вы изучаете трендовые технологии, они обязательно пригодятся в работе и вы сможете попробовать их на практике. Когда я только пришёл в ЦИТиС, мы писали на своём фреймворке и чистом PHP, но решили уйти в сторону более современных и продуманных решений. Остановились на Yii2 — его знали большинство наших программистов, и он подходил под наши задачи. По счастливому совпадению, именно Yii2 я изучал в свободное от работы время.
Какие инструменты я использую в работе
Хоть я работаю в государственной компании, у меня довольно стандартный набор инструментов для веб-разработки:
- PhpStorm — это основная IDE для редактирования и написания кода.
- DataGrip или бесплатный DBeaver для баз данных. Они позволяют корректно управлять базой данных, составлять запросы, иметь наглядное представление о данных и работать с ними.
- Postman — чтобы тестировать HTTP-запросы и смотреть, как их отрабатывает база данных.
- Стандартные линуксовские утилиты для системного администрирования, Apache, PostgreSQL, MySQL и другие.
В ближайшее время я планирую познакомиться с Go. Думаю, каждый PHP-разработчик рано или поздно переходит на него или хотя бы пробует. Ещё хочу поработать с MariaDB и MongoDB.
Также изучаю Slim — фреймворк для создания API. Это интересный и простой инструмент, но для достижения более качественных решений приходится вникать во множество смежных технологий, что меня и коснулось. Если же у меня возникают вопросы, то я иду на PHP Standards Recommendations и Stack Overflow.
Как построена разработка в госкомпании
Мы работаем с информацией ограниченного распространения, поэтому всегда ездим в офис. Так как мы совместно разрабатываем большой проект, задачи часто пересекаются и нам приходится тесно общаться и помогать друг другу. Поэтому софт-скиллы у нас в приоритете. Нужно уметь работать в команде, адекватно реагировать на критику и соблюдать субординацию.
В самом начале я решал простые задачи и писал много кода. Но со временем моя работа стала более стратегической — задачи усложнились, и я стал тратить больше времени на обдумывание решений. Когда меня повысили до лида, я стал менторить новичков, управлять командой и проводить собеседования. Кроме того, теперь я решаю сложные архитектурные задачи, общаюсь с заказчиками и провожу системный анализ.
Когда первоочередные задачи решены, я помогаю коллегам или занимаюсь самообразованием. У нас в компании это поощряют и даже оплачивают обучение. Так я прошёл курсы по безопасной разработке ПО от «Эшелона» и разработке под Astra Linux.
Плюсы и минусы работы на государство
Начнём с недостатков. Я вижу всего два:
Невысокая зарплата. Наши зарплаты гораздо меньше, чем в частных компаниях. Но у нас есть повышения и премии. А ещё здесь более лояльное руководство, чем в коммерческой компании, и действительно дружный коллектив.
Невозможно быстро внедрять новые технологии. Мы разрабатываем современный продукт, но не можем быстро внедрять современные технологии, даже версии языка. Ведь сейчас в стране высокий спрос на безопасность, и выходить за рамки ГОСТов запрещено. ГОСТы сертифицируют конкретные версии технологий, поэтому часто они могут быть устаревшими.
И всё же это не такая страшная проблема, как может показаться на первый взгляд. Всегда можно договориться с вышестоящими инстанциями и согласовать новую версию технологии. Надо только объяснить, зачем нужна именно она.
Теперь к плюсам:
Стабильность. Я точно знаю, что завтра меня не сократят и компания не обанкротится. У нас нет увольнений из-за пандемии или карантина. Наоборот — многих в этот период даже повышали.
Контакт с начальством. Наша организация не погрязла в бюрократии — можно поговорить с начальником любого уровня, спросить, посоветоваться и что-нибудь предложить. Начальники выслушают, вникнут в вашу проблему и даже пойдут навстречу.
Дружная команда. У нас классный коллектив, в котором нет токсиков и никто никого не подставляет. Даже наоборот: приходишь на работу и чувствуешь себя как дома. Бывший коллега ушёл работать за гораздо большие деньги в частную компанию и очень жалеет, что потерял такую атмосферу и дружелюбный коллектив.
Резюме
Если для вас главное — много зарабатывать, а условия не столь важны, идите в коммерческую разработку. Но если хотите стабильный средний доход, быть уверенным в завтрашнем дне и планировать на много лет вперёд, то работа на госпредприятии — для вас. Конечно, я тоже хочу зарабатывать больше, но всё же отношусь ко второму типу. Мне нравится, что я могу заниматься личными проектами в свободное время и совмещать основную работу с фрилансом.
 Все
                                Все
                             Истории
                                        Истории Дизайн
                                    Дизайн Код
                                    Код Геймдев
                                    Геймдев Бизнес
                                    Бизнес Маркетинг
                                    Маркетинг Управление
                                    Управление Кино
                                    Кино Музыка
                                    Музыка Проектная фотография
                                    Проектная фотография Развитие
                                    Развитие Здоровье
                                    Здоровье Деньги
                                    Деньги Образование
                                    Образование EdTech
                                    EdTech Корп. обучение
                                    Корп. обучение Блог Skillbox
                                    Блог Skillbox Глоссарий
                                        Глоссарий Спецпроекты
                                        Спецпроекты Профориентация
                                        Профориентация 
                                     
                     
                     
                                     
                                     
                                     
                                    