Реально ли работать в одном IT-проекте (продуктовом) больше 5-ти лет и не деградировать профессионально?
==========================================================================================================

 Средняя продолжительность работы специалиста в одной IT-компании - не больше 4-х лет. В Google - больше года. Данные различаются по странам, но тенденция одна (к ней и привязан мой вопрос): специалист работает в компании 2-3 года и уходит. По разным причинам. Часть из них - объективные (развитие технологий), часть - субъективные (стремление развиваться, поиск лучших условий). Мой вопрос: реально ли развиваться в течение 5-ти лет и больше в одном продуктовом проекте и не деградировать? И не просто стоять на месте, а развиваться? Аргументы, почему "да" или "нет". За реальные примеры буду особенно признательна. Я - представитель IT-проекта, в котором много старожилов, включая меня. Интересно сравнить наш опыт с опытом других специалистов. 

 В одном проекте можно, в другом нельзя; одному программисту можно, другому нельзя. Если человек хочет развиваться, вы его не остановите. Если не хочет - не заставите. Проект может помогать или мешать, но сам по себе определяющим фактором почти не является. Собственно, вы сами это подтверждаете своим bio:  

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

  

  

В целом - скорее реально, чем нет, если есть хоть какое-то желание это делать.  

Конкретных аргументов тут никаких дать невозможно, потому что проекты все разные, люди все разные. Но это не помешает сейчас тут пяти-десяти людям написать абсолютно противоположные по смыслу ответы, которые будут сводиться к тому, что я написал выше. 

> Мой вопрос: реально ли развиваться в течение 5-ти лет и больше в одном продуктовом проекте и не деградировать?

конечно возможно, почему бы и нет? Вот только человек со сменой работ будет прогрессировать быстрее и ему проще будет с этим 

 Если задачи сложные и разноплановые (особенно если повезло и иногда встречаются творческие), то никакой деградации не должно быть. Как вариант - кодить что-то своё ("пет-проект") в свободное время, изучать какие-нибудь штуки. А вообще, пока нет выгорания - не стоит переживать )) Вот как выгоришь, там и деградация, и все прочие углеводы. 

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

  

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

  

p.s. Вон посмотрите на Торвальдса - он деградировал? 

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

 Очень сильно зависит от того, как Вы работаете и какой опыт Вы получаете.  

  

Если изо дня в день делать одно и тоже с небольшими изменениями - вряд ли Вы развиваетесь.  

  

Если за это время компания увеличилась в несколько раз, Вы регулярно получаете повышение, постоянно обучаетесь новому, внедряете новое, ведете пет проекты, консультируете коллег из других проектов - то, возможно, что и не деградируете. 

 тут какая то подмена понятий. что значит деградировать? отработав 5 лет и 1 месяц на одном проекте, вы легко пройдете собеседование на другой.   

  

насчет этих самых четырех лет. пусть для вас это будет просто цифра. не пытайтесь делать из нее далеко идущих выводов.  

  

правильный ответ: да. можно. 

 От руководства зависит. В целом, постоянная смена работы - не есть непременное условие роста. Например: бывают случаи, когда человек работая на заводе, из простого токаря превращается в директора завода. Такие случаи в природе имеются :) Делайте выводы. 

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

  

Средняя продолжительность не более 4 лет - это следствие плохой работы кадровых служб. Лень думать как и где лучше использовать специалиста после завершения этапа проекта. В итоге переманивают и мучают отбором людей из вне. А уже проверенные и интегрированные в компанию специалисты уходят к соседям или вообще в другие отрасли 

 Побольшей части зависит от размера компании, ее затхлости и развития  

К примеру работаю с в небольшой компании уже семь лет, она выросла с трёх человек до 20+  

Два раза полностью переписывался основной продукт с руби на руби машиневентс и потом на го  

Начинали с одного сервера сейчас 50+ серверов раскиданных по всему земному шару  

  

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

  

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

  

Не получится в мелких где над вами есть техконтроль сверху  

  

Не получится в затхлых это обычно там где есть старый продукт, который уже имеет клиент внешних или внутренних и плюс минус их устраивает , но в целом не даёт его как следует обновить или переписать, сидишь там потом на формочках двигаешь поля и правишь старые баги 

 Соглашусь с @d-sem  

  

В крутых проектах с сильным IT коллективом можно хоть всю жизнь проработать, и при этом все время расти.  

В таких компаниях руководство само отправляет сотрудников на конференции, проводит треннинги, поощряет профессиональное саморазвитие. Зачастую есть своя регулярно обновляемая библиотека проф литературы (знаю, во времена повсеместной удаленки не оч актуально) ).  

  

А есть конторы, в которых сотрудники много лет варятся в своем котле и многие вещи делают дедовскими методами.  

В одной из таких я в 2021 году на полном серьезе рассказывал так называемому тим лиду, что есть такая чудесная штука как веб-сокеты, которая между прочим не вчера появилась, и что уже нет необходимости каждую секунду долбиться аяксом на сервер чтобы узнать об обновлениях. Он слушал весьма недоверчиво. 

 Если Вы уверены что суть вопроса лежит в плоскости именно деградации, а не в том что Вам все надоело, то ДА 100% дерграднет и даже раньше 5 лет.  

  

Надо научиться отделять как дом и работу. Так же разделять проект от своего развития ибо действительно развиваться можно только самому делая что то для себя, изучая те вещи которые хочешь, а не которые приходится по работе. Но это работает только если Вам это реально интересно и не считаете что работа Вас обязана развивать. Развиваться надо самому. 

 очень сложно работать над одним проектом и быстро развиваться, тк у каждого проекта есть жизненный цикл, разработка постепенно сменяется поддержкой, рост и развитие замедляется, в результате если хочется роста, нужно менять проекты, обычно внутри компании переходить между проектами проще.   

П. С.   

с точки зрения позиции и доходов внутри компании такой рост очень медленно происходит, поэтому тоже приходится компанию менять. 

 Если проекты над которыми вы работаете развиваются, то развиваетесь и вы, что как бы логично. Приведу пример.  

Я второй год работаю в компании в которой следующая ситуация: над нами сверху есть только менеджерский контроль по срокам. По выбору технологий мы (кто обычно работает над проектами, это команда +- 3-5 чел.) вольны выбирать всё что сами захотим. Строить систему мы можем как хотим, указаний сверху нет. Да как можно понять проекты не энтерпрайз уровня, по сути не очень большие, но разноплановые. И сервис который работает с IoT построенный на микросервисах, написанный на Go, и монолиты полу энтерпрайз (в том плане, что для реальных мамонтов в 1000000000 строк кода этим проектам далеко, но бизнес логика довольно сложна), написанные на пыхе. И еще куча разных сервисов на разных технологиях которые выбирает команда, там и питон и haskell даже вроде где-то был. И я например могу по учувствовать если захочу в любом проекте, что я частенько и делаю. Есть минусы, это жесткие сроки, которые порой доходят до смешного. Типа соберите mvp за неделю. Мы его собираем, а дальше сверху думают - "какие парни молодцы, за неделю такую систему собрали, давайте ка им выдвинем еще кучу требований, за две недели управятся". В таких сроках да, в архитектуре ПО особо не прокачаешься, потому что планировать тупо некогда. В этом плане я скорее деградну через год два. Но в остальном я очень даже развиваюсь, и не в свободное время, а прям на работе. У нас очень плохо построен пайплайн, во многих проектах отсутствует CI/CD, там где он был бы кстати, ну потому что опять же никто времени не находит. Но в этом опять же есть плюс, потому что я потихоньку начинаю вокруг своих проектов его налаживать, по мере возможностей и времени. Чем не развитие? Так что деградация начинается тогда, когда у тебя задачи одна на другую похожи, в таком случае лучше естественно валить в другую компанию. Еще как пример я сейчас перевожу одну небольшую систему как бы по работе, но как бы в качестве пет проекта с одного стека на другой (не потому что мне так захотелось, есть реальная необходимость которую я вижу), и когда переведу весь текущий функционал, продолжу работать уже с новым стеком технологий.