Как писать код, который будет актуален и через 10 лет?

"Войти в айти" стало трендом в СНГ за последние 2 года. Рынок оброс специалистами, однако далеко не все понимают, что такое инженерная культура в IT-компаниях и чем программный инжиниринг отличается от программирования.


Мы в Kolesa Group активно развиваем IT-рынок, запускаем бесплатные образовательные проекты, набираем молодые таланты, поэтому хотим поговорить на тему IT-культуры.

Гостем второго эпизода подкаста "Код и кофе" стал Антон Сергеев, тимлид в Kolesa Group. Антон в разработке уже больше 10 лет и успел попробовать себя в разных областях помимо веба — от десктопного софта до устройств IoT, занимался синхронизацией времени в беспроводных сетях, писал на самых разных языках — от Java, C, ActionScript до Go и PHP.

В статье ниже мы собрали самые важные отрывки из подкаста.

Есть ли код, который жив спустя 10-15 лет?

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

Программный инжиниринг vs программирование

В книге Software Engineering at Google ребята из Google описали, в чем, по их мнению, отличие между этими двумя понятиями.

Программный инжиниринг — программирование, интегрированное во времени. То есть многократно повторенное во времени.

Одноразовый код, который написали для решения сиюминутной задачи — это программирование.

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

Инженерная культура: что это и как ее развивать

Это то, как в компании принято разрабатывать программы. Не обязательно даже специально проговаривать правила и объявлять, что "теперь у нас есть инженерная культура". Многие о ней даже не задумываются, но отношение/подходы к программированию и то, как устроена разработка — это и есть та самая культура.

Хорошая инженерная культура — это когда люди пишут код качественно, постоянно его улучшают, выносят уроки из ошибок и внедряют автотесты.

Также мы поговорили о:

  • культуре экспериментов;
  • выборе технологий и их внедрении;
  • синьорах и джунах;
  • разработческих мифах: нелюбовь к планеркам и ведению документации.

Послушать полную версию можно по ссылке.

Comments 0

Login to leave a comment