Практически каждый разработчик задается вопросами, как ему следует развивать свои навыки и какое направление роста выбрать: вертикальное — то есть, стать управленцем, либо горизонтальное — фулстек. Многолетняя работа над одним продуктом, вопреки мифам, становится не ограничением, а полезной возможностью. В этой статье мы делимся опытом нашего backend разработчика Алексея, который посвятил 6 лет сертификациям и прошел за это время путь до архитектора.

Архитектор в IT (техлид) – это разработчик высокого уровня, который занимается глобальными вопросами в IT-проектах. Он погружается в бизнес-процессы заказчика и помогает решать его задачи с помощью технологий, а также определяет, как будет устроена та или иная информационная система.
Такому профессионалу необходимо не только разбираться в отдельных предметных областях, но и видеть весь процесс:
Это означает умение поставить себя на место любого специалиста или команды в жизненном цикле разработки, изнутри понять текущее состояние систем, выявить допущенные ошибки, сформулировать цели. Иногда — собственноручно провести оперативное вмешательство.
Путь профессионального развития от разработчика до архитектора занимает продолжительное время — как правило, несколько лет. Для этого разработчику нужны как практические навыки, так и знание теории, которое можно подтвердить международной сертификацией.
Несколько лет назад мы начали работу над крупной медицинской ИТ-системой для зарубежного заказчика. В этом масштабном проекте существовали определенные проблемы:
“Пора повышать квалификацию”, — к такому решению пришел один из ведущих разработчиков Алексей, чтобы преодолеть перечисленные сложности и лучше разобраться в системе.
Алексей поделился опытом, с чего лучше начать обучение, какие сертификаты важно получить, как и зачем это делать.
Языки программирования — фундаментальная составляющая разработки, но языки для общения не менее важны. Особенно в коммуникациях с англоязычным заказчиком!
Для того, чтобы улучшить коммуникации в рамках нашего медицинского проекта, Алексей учился сразу по нескольким программам. В результате он сдал сертификацию FCE — First Certificate in English. Это помогло начать слышать заказчика и доносить свои мысли до него.

Изначально основу проекта составляла технология объектно-реляционного отображения ORM. Команда разработчиков со стороны заказчика гордилась своим детищем, ведь всё было сделано с применением передовых концепций, сложно и круто.
Тем не менее, проблемы на проде — в частности, постоянно зависающего SQL-сервера, были не редкостью. Доходило до того, что типовым решением проблемы был перезапуск службы. Заказчик звонил тимлиду и сообщал, что пора перезапускаться. Наконец мы решили с этим покончить.
Заказчик пожелал проработать перфоманс системы — для этого нужно было внедрить профилирование и регулярно проводить оптимизацию. В качестве инструмента профилирования на тот момент — примерно в 2015 году — выбрали Ants Profiler, но тот проявил себя слабо. При малой детализации сложно было получить информацию о критичном блоке кода. При максимальной детализации Ants Profiler начинал менять код так, что работоспособность систем оказывалась под угрозой — там, где было настроено профилирование, всё просто падало. Поэтому мы изменили подход.
Мы начали с анализа статистики
При анализе статистики прода стало ясно, что 95% работ на сервере имеют примитивную бизнес-логику в 4 строки. Для них достаточно было одного SQL-запроса, а не полного множества запросов, сгенерированного блоком бизнес-логики с ORM.
Алексей предложил и реализовал хранимую процедуру по перемещению работ без ORM. Идея противоречила привычной парадигме проекта, тимлид встретил ее настороженно, но заказчик все принял и запросил внедрение. Это не было удивительно, ведь новый метод позволял уменьшить задержки в обработке на проде с четырех часов до нескольких минут — в среднем в 98 раз.
И все же у нас оставались сомнения: это верное решение или вопрос личных предпочтений? Веру во всемогущий С# и ORM пошатнула случайность, показавшая всю силу простых решений.
Первые сертификаты
Для понимания сути Алексей прошёл несколько сертификаций Microsoft, охвативших весь технологический стек проекта:
Стараясь оптимизировать работу над новым проектом, команда пришла к следующим выводам:

При работе над масштабными IT-решениями важно множество факторов. Например, не каждый разработчик обращает внимание на параметры сети — но даже ее пропускная способность может влиять на решение бизнес-задачи.
Понимание этого дают сертификации 98 серии:
Они позволяют шире взглянуть на вещи и выйти из ограниченной концепции “только код”. Это Fundamentals, основы, но они важны, чтобы понять всё на более глубоком уровня.
Сертификации 98 серии представляют собой небольшие тесты — 30 вопросов на 45 минут.
Работа с клиниками — более ответственное мероприятие, чем, допустим, создание мобильной игры. Здесь нельзя добавить фичу и выкатить на прод — важно соблюсти процесс согласования и внесения многочисленных правок от заказчика, ведь на кону здоровье и жизни людей.
Типичный Agile не давал желаемых результатов на этом проекте, и каждый спринт длился достаточно долго. Между деплоями проходило от 6 месяцев до года.
К тому же, чисто технически невозможно было привести процессы десяти обслуживаемых клиник к какому-то общему знаменателю.
Для того, чтобы в этих условиях оперативнее получать результат, разработчикам требовались личная ответственность и масштабное видение процессов — а значит, постоянная концентрация внимания и высокая квалификация.
Когда специалист погружен в процесс, он четко видит результаты, причины и следствия, целостную картину. Это является одновременно фактором дополнительной мотивации и осведомленности, улучшения способности решать задачи и проблемы.
При хорошо отлаженной инфраструктуре, грамотно выстроенной архитектуре и оптимальном коде один человек может брать на себя многие процессы. Однако, это не значит, что нужно выращивать универсальных солдат, которые способны в одиночку вести проект. Коммуникации и командная работа критически важны.
В команде каждый разработчик понимает, что коллеги зависят от его действий. Экономия в 5 минут на этапе разработки — это, возможно, 5 дополнительных часов тестирования. Для понимания этого важно наладить коммуникации.
В нашем проекте подспорьем в освоении процессов Алексею послужили сертификаты от EXIN:
На edX были пройдены курсы, которые помогли посмотреть на систему с точки зрения статистики и бережливого программирования и позже подтолкнули к получению сертификата архитектора:
Согласно принципу “Шесть сигм” (Six Sigma), статистический контроль обеспечивает качественный результат с чрезвычайно высокой вероятностью.
Повышая свой уровень, разработчик, как правило, приходит к следующим выводам:

На проекте мы имели дело с довольно большими базами данных. По крайней мере, так казалось до определённого момента. Когда Алексей приступил к изучению больших данных на edX, выяснилось, что 1,5 Tb на проекте — это малая база данных. Серьёзные масштабы — от 10 Tb, и там требуются другие методы.
Следующим шагом на пути сертификации стал курс по большим данным. Он помог понять организацию потока данных и ускорить операции на проде. А также обратить внимание на малые инструменты, например, начать использовать Excel для решения отдельных микрозадач.
Сертификат:
Microsoft Professional Program: Big Data Certificate

После получения всех перечисленных сертификатов, ещё будучи разработчиком, Алексей начал понимать, что полученная информация имеет высокий уровень абстракции, причём это далеко не плохо.
Масштабное видение процессов подводит к уровню архитектора, одной из высших ступеней сертификации.
В поисках сертификации архитектора Алексей вышел на Certified Software Architect — Microsoft Platform от Sundblad & Sundblad. Это программа, признанная Microsoft, ее разработка началась ещё 14 лет назад при сотрудничестве головного и шведского офисов компании. Она охватывает .NET Framework, сбор требований, управление потоком информации и многие другие вопросы на высоком уровне и считается веским подтверждением навыков архитектора.
В рамках программы были курсы для изучения. Сертификация систематизировала знания и позволила выйти на новый виток развития — от разработчика до архитектора.

Как отмечает Алексей, в процессе работы с масштабной IT-системой важно помнить, что программирование — не дорогостоящее развлечение, а инструмент для решения бизнес-задач. Сталкиваясь с тем или иным вызовом, непременно нужно прописывать business value, чтобы проект не зашел в тупик.
Архитектор имеет особый взгляд на программирование и его элементарные составляющие:
Если смотреть на проект глазами архитектора, начинать нужно с конца: сформулировать ценность и затем идти к ней через поток данных.
Архитектор соблюдает правила разработки, имея глобальное видение проекта. Прийти к нему через практику и собственные ошибки практически невозможно — точнее, можно, но очень долго. Сертификация позволяет расширить кругозор и посмотреть на полный контекст каждого вопроса, ознакомиться с опытом тысяч профессионалов и выработать навык эффективного решения задач.
На сегодняшний день мы работаем с вышеописанной медицинской системой более пяти лет и добились значительных улучшений. За это время Алексей сдал более 20 сертификационных экзаменов:

Сдав все экзамены, Алексей вырос от ведущего разработчика до архитектора проекта. При этом сертификация стала мощным средством как профессионального развития, так и наработки репутации в глазах заказчика.
“Сертификационный таран” помог получить доступ к отдельным критическим процессам, которые нуждались в контроле и проработке. Европейские заказчики IT-решений, как правило, высоко ценят сертифицированных специалистов и готовы предоставить им больше свободы действий.
Спасибо за внимание! Надеемся, что статья была для вас полезна.

Кто такой архитектор
Архитектор в IT (техлид) – это разработчик высокого уровня, который занимается глобальными вопросами в IT-проектах. Он погружается в бизнес-процессы заказчика и помогает решать его задачи с помощью технологий, а также определяет, как будет устроена та или иная информационная система.
Такому профессионалу необходимо не только разбираться в отдельных предметных областях, но и видеть весь процесс:
- Постановка бизнес-задачи.
- Разработка, включая программирование, подготовку, хранение и обработку данных.
- Развёртывание и поддержка инфраструктуры.
- Тестирование.
- Деплой.
- Аналитика и эксплуатационное обслуживание.
Это означает умение поставить себя на место любого специалиста или команды в жизненном цикле разработки, изнутри понять текущее состояние систем, выявить допущенные ошибки, сформулировать цели. Иногда — собственноручно провести оперативное вмешательство.
Путь профессионального развития от разработчика до архитектора занимает продолжительное время — как правило, несколько лет. Для этого разработчику нужны как практические навыки, так и знание теории, которое можно подтвердить международной сертификацией.
Более 5 лет на одном проекте – рутина или возможность для роста?
Несколько лет назад мы начали работу над крупной медицинской ИТ-системой для зарубежного заказчика. В этом масштабном проекте существовали определенные проблемы:
- ограниченные доступы;
- нестабильный прод;
- невероятно растянутые спринты и длительные согласования.
“Пора повышать квалификацию”, — к такому решению пришел один из ведущих разработчиков Алексей, чтобы преодолеть перечисленные сложности и лучше разобраться в системе.
Алексей поделился опытом, с чего лучше начать обучение, какие сертификаты важно получить, как и зачем это делать.
Шаг первый: прокачайте English
Языки программирования — фундаментальная составляющая разработки, но языки для общения не менее важны. Особенно в коммуникациях с англоязычным заказчиком!
Из практики
В один прекрасный день Алексею позвонила сотрудница со стороны заказчика. Тогда наш разработчик ещё не мог похвастаться кипой сертификатов — ни по технологиям, ни по менеджменту, ни по коммуникациям. Возможно, они и не пригодились бы — ведь быть грамотным специалистом можно и без дополнительных регалий. Но проблема всё-таки возникла.
Надо понимать, что разговорный язык радикально отличается от письменного. Если вы прекрасно ориентируетесь в англоязычных спецификациях, но не практикуете listening и speaking, то у нас для вас плохие новости. В таком случае телефонные переговоры с партнёрами могут завести в тупик.
Алексей на звонке улавливал некоторые знакомые слова, но речь коллеги была настолько быстрой и непохожей на классическое произношение из аудиоуроков, что основная суть её вопросов прошла куда-то мимо. Из вежливости и нежелания усложнять ситуацию, Алексей быстро согласился на все предложения.
Надо ли говорить, что в процессе работы были сделаны неприятные открытия? Наш разработчик подписался на такое, от чего абсолютно сознательно отказался бы, если бы предложение поступило на понятном языке.
В тот момент стало понятно, что прокачивать навыки слушания и говорения просто необходимо. Лучшим способом для этого были сертификации.
Сертификация по английскому языку
Для того, чтобы улучшить коммуникации в рамках нашего медицинского проекта, Алексей учился сразу по нескольким программам. В результате он сдал сертификацию FCE — First Certificate in English. Это помогло начать слышать заказчика и доносить свои мысли до него.
Лайфхак:
Избегайте программ обучения базовому английскому. Навык должен быть целевым. Если требуется английский для делового общения — его и нужно брать. Только не стоит уходить в крайности и сдавать CAE (Certificate in Advanced English). Его особенность — sophisticated words, специфические выражения, которые в международном общении почти не используются.

Шаг второй: сертификация по всему технологическому стеку
Изначально основу проекта составляла технология объектно-реляционного отображения ORM. Команда разработчиков со стороны заказчика гордилась своим детищем, ведь всё было сделано с применением передовых концепций, сложно и круто.
Тем не менее, проблемы на проде — в частности, постоянно зависающего SQL-сервера, были не редкостью. Доходило до того, что типовым решением проблемы был перезапуск службы. Заказчик звонил тимлиду и сообщал, что пора перезапускаться. Наконец мы решили с этим покончить.
Заказчик пожелал проработать перфоманс системы — для этого нужно было внедрить профилирование и регулярно проводить оптимизацию. В качестве инструмента профилирования на тот момент — примерно в 2015 году — выбрали Ants Profiler, но тот проявил себя слабо. При малой детализации сложно было получить информацию о критичном блоке кода. При максимальной детализации Ants Profiler начинал менять код так, что работоспособность систем оказывалась под угрозой — там, где было настроено профилирование, всё просто падало. Поэтому мы изменили подход.
Мы начали с анализа статистики
При анализе статистики прода стало ясно, что 95% работ на сервере имеют примитивную бизнес-логику в 4 строки. Для них достаточно было одного SQL-запроса, а не полного множества запросов, сгенерированного блоком бизнес-логики с ORM.
Алексей предложил и реализовал хранимую процедуру по перемещению работ без ORM. Идея противоречила привычной парадигме проекта, тимлид встретил ее настороженно, но заказчик все принял и запросил внедрение. Это не было удивительно, ведь новый метод позволял уменьшить задержки в обработке на проде с четырех часов до нескольких минут — в среднем в 98 раз.
И все же у нас оставались сомнения: это верное решение или вопрос личных предпочтений? Веру во всемогущий С# и ORM пошатнула случайность, показавшая всю силу простых решений.
Кейс второй
Команда написала запрос для работы с данными в рамках парадигмы ORM, составленный по всем правилам, без ошибок. Его обработка занимала 2-3 минуты, и эти параметры казались приемлемыми. Однако, альтернативная реализация с помощью простейших селектов и view обеспечила результат быстрее — за 2 секунды.
Стало очевидно, что пора выбрать специалиста, который пройдет сертификацию по всему стеку проекта, чтобы разобраться во всех нюансах и выбрать оптимальный метод. Эту задачу взял на себя Алексей.
Первые сертификаты
Для понимания сути Алексей прошёл несколько сертификаций Microsoft, охвативших весь технологический стек проекта:
- TS: Windows Applications Development with Microsoft .NET Framework 4
- TS: Accessing Data with Microsoft .NET Framework 4 Programming in C#
- TS: Microsoft .NET Framework 3.5 Windows Forms Application Development
- PRO: Designing and Developing Windows Applications using Microsoft .NET Framework 3.5
- PRO: Designing and Developing Windows-based Applications by Using the Microsoft .NET Framework
- TS: Microsoft .NET Framework 2.0 — Windows-based Client Development
Стараясь оптимизировать работу над новым проектом, команда пришла к следующим выводам:
- Для работоспособности систем необходимо соблюдать правила написания кода: не отступы и комментарии, а технические характеристики — количество обращений к базам, нагрузка на сервер и многое другое.
- Применение противоречивых концепций чревато неприятностями. Концепция баз данных — теория множеств, в то время как ORM — концепция операций.
- Идеи, которые нарушают привычный порядок вещей, могут встретить сопротивление в команде. Разработка — это также взаимоотношения и умение аргументировать свою точку зрения.
- Сертификация расширяет кругозор и позволяет понять, что можно использовать, а также что можно не использовать.

Шаг третий: изучайте не только код
При работе над масштабными IT-решениями важно множество факторов. Например, не каждый разработчик обращает внимание на параметры сети — но даже ее пропускная способность может влиять на решение бизнес-задачи.
Понимание этого дают сертификации 98 серии:
Они позволяют шире взглянуть на вещи и выйти из ограниченной концепции “только код”. Это Fundamentals, основы, но они важны, чтобы понять всё на более глубоком уровня.
Сертификации 98 серии представляют собой небольшие тесты — 30 вопросов на 45 минут.
Шаг четвертый: управление процессами
Работа с клиниками — более ответственное мероприятие, чем, допустим, создание мобильной игры. Здесь нельзя добавить фичу и выкатить на прод — важно соблюсти процесс согласования и внесения многочисленных правок от заказчика, ведь на кону здоровье и жизни людей.
Типичный Agile не давал желаемых результатов на этом проекте, и каждый спринт длился достаточно долго. Между деплоями проходило от 6 месяцев до года.
К тому же, чисто технически невозможно было привести процессы десяти обслуживаемых клиник к какому-то общему знаменателю.
Для того, чтобы в этих условиях оперативнее получать результат, разработчикам требовались личная ответственность и масштабное видение процессов — а значит, постоянная концентрация внимания и высокая квалификация.
Когда специалист погружен в процесс, он четко видит результаты, причины и следствия, целостную картину. Это является одновременно фактором дополнительной мотивации и осведомленности, улучшения способности решать задачи и проблемы.
При хорошо отлаженной инфраструктуре, грамотно выстроенной архитектуре и оптимальном коде один человек может брать на себя многие процессы. Однако, это не значит, что нужно выращивать универсальных солдат, которые способны в одиночку вести проект. Коммуникации и командная работа критически важны.
В команде каждый разработчик понимает, что коллеги зависят от его действий. Экономия в 5 минут на этапе разработки — это, возможно, 5 дополнительных часов тестирования. Для понимания этого важно наладить коммуникации.
В нашем проекте подспорьем в освоении процессов Алексею послужили сертификаты от EXIN:
- M_o_R Foundation Certificate in Risk Management
- Agile Scrum Foundation
- IT Service Management Foundation
- EXIN Business Information Management Foundation
- PRINCE2 Foundation Certificate in Project Management
- Test Engineer Certificate
- Microsoft Operations Framework Foundation
- Agile Service Projects
На edX были пройдены курсы, которые помогли посмотреть на систему с точки зрения статистики и бережливого программирования и позже подтолкнули к получению сертификата архитектора:
- Lean Production
- Six Sigma: Analyze, Improve, Control
- Six Sigma: Define and Measure
Согласно принципу “Шесть сигм” (Six Sigma), статистический контроль обеспечивает качественный результат с чрезвычайно высокой вероятностью.
Повышая свой уровень, разработчик, как правило, приходит к следующим выводам:
- Работайте не много, а эффективно.
- Не усложняйте жизнь в погоне за внешней стороной: навороченные технологии не обязательно решают проблемы лучше.
- Дружите со специалистами всех стадий цикла и выясняйте их боли. Архитектор обязан владеть процессами: выявление проблемы, постановка задачи, проектирование топологии сети, разработка, тестирование, саппорт, эксплуатация.
- Проверяйте каждую фичу от и до.
- Бывает, что IT-процессы не соответствуют бизнес-процессам, и с этим нужно бороться.

Шаг пятый: понять архитектуру через призму Big Data
На проекте мы имели дело с довольно большими базами данных. По крайней мере, так казалось до определённого момента. Когда Алексей приступил к изучению больших данных на edX, выяснилось, что 1,5 Tb на проекте — это малая база данных. Серьёзные масштабы — от 10 Tb, и там требуются другие методы.
Следующим шагом на пути сертификации стал курс по большим данным. Он помог понять организацию потока данных и ускорить операции на проде. А также обратить внимание на малые инструменты, например, начать использовать Excel для решения отдельных микрозадач.
Сертификат:
Microsoft Professional Program: Big Data Certificate

Шаг шестой: от разработчика — до архитектора
После получения всех перечисленных сертификатов, ещё будучи разработчиком, Алексей начал понимать, что полученная информация имеет высокий уровень абстракции, причём это далеко не плохо.
Масштабное видение процессов подводит к уровню архитектора, одной из высших ступеней сертификации.
В поисках сертификации архитектора Алексей вышел на Certified Software Architect — Microsoft Platform от Sundblad & Sundblad. Это программа, признанная Microsoft, ее разработка началась ещё 14 лет назад при сотрудничестве головного и шведского офисов компании. Она охватывает .NET Framework, сбор требований, управление потоком информации и многие другие вопросы на высоком уровне и считается веским подтверждением навыков архитектора.
В рамках программы были курсы для изучения. Сертификация систематизировала знания и позволила выйти на новый виток развития — от разработчика до архитектора.

Подводя итоги
Как отмечает Алексей, в процессе работы с масштабной IT-системой важно помнить, что программирование — не дорогостоящее развлечение, а инструмент для решения бизнес-задач. Сталкиваясь с тем или иным вызовом, непременно нужно прописывать business value, чтобы проект не зашел в тупик.
Архитектор имеет особый взгляд на программирование и его элементарные составляющие:
- Создание и/или поддержка потока данных
- Извлечение потока информации на основании потока данных
- Извлечение потока ценности на основании потока информации
- Монетизация потока ценности
Если смотреть на проект глазами архитектора, начинать нужно с конца: сформулировать ценность и затем идти к ней через поток данных.
Архитектор соблюдает правила разработки, имея глобальное видение проекта. Прийти к нему через практику и собственные ошибки практически невозможно — точнее, можно, но очень долго. Сертификация позволяет расширить кругозор и посмотреть на полный контекст каждого вопроса, ознакомиться с опытом тысяч профессионалов и выработать навык эффективного решения задач.
На сегодняшний день мы работаем с вышеописанной медицинской системой более пяти лет и добились значительных улучшений. За это время Алексей сдал более 20 сертификационных экзаменов:
- TS: Windows Applications Development with Microsoft .NET Framework 4
- TS: Accessing Data with Microsoft .NET Framework 4 Programming in C#
- TS: Microsoft .NET Framework 3.5 Windows Forms Application Development
- PRO: Designing and Developing Windows Applications using Microsoft .NET Framework 3.5
- PRO: Designing and Developing Windows-based Applications by Using the Microsoft .NET Framework
- TS: Microsoft .NET Framework 2.0 — Windows-based Client Development
- 98-361: Software Development Fundamentals
- 98-364: Database Fundamentals
- M_o_R Foundation Certificate in Risk Management
- Agile Scrum Foundation
- IT Service Management Foundation
- EXIN Business Information Management Foundation
- PRINCE2 Foundation Certificate in Project Management
- Test Engineer Certificate
- Microsoft Operations Framework Foundation
- Agile Service Projects
- Lean Production
- Six Sigma: Analyze, Improve, Control
- Six Sigma: Define and Measure
- Microsoft Professional Program: Big Data Certificate
- Certified Software Architect — Microsoft Platform

Сдав все экзамены, Алексей вырос от ведущего разработчика до архитектора проекта. При этом сертификация стала мощным средством как профессионального развития, так и наработки репутации в глазах заказчика.
“Сертификационный таран” помог получить доступ к отдельным критическим процессам, которые нуждались в контроле и проработке. Европейские заказчики IT-решений, как правило, высоко ценят сертифицированных специалистов и готовы предоставить им больше свободы действий.
Спасибо за внимание! Надеемся, что статья была для вас полезна.