Один из самых полезных навыков в разработке ПО не имеет ничего общего с разработкой ПО

Перевод статьи Адама Баркера «One of the Most Useful Software Development Skills Has Nothing To Do With Software Development».

Один из самых полезных навыков

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

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

Особенно в наше время.

Когда мне было 14, я проходил трехнедельную практику в маленькой фирме по разработке ПО. Я помню, как хозяин фирмы, будучи впечатленным игрой, которую я написал (на AMOS для Commodore Amiga — да, давненько это было), посмотрел на меня и сказал: «Тебе нужно изучить С».

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

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

Установка: решайте проблемы, а не просто пишите код

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

Эти двое были просто рок-звезды. Их мнение значило больше, чем мнение всех остальных, и порой казалось, что они могут рулить этой компанией самостоятельно. Они пользовались прямым доступом к «верхушке», а команда руководителей удовлетворяла каждое их желание.

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

В конечном итоге я понял.

Они не писали программы, они решали проблемы.

Я думаю, что когда вы присоединяетесь к небольшой компании, одним из самых важных навыков для вас будет чуткость к целям компании. Там будет много более важных вещей, чем создание отличного ПО без багов, внедрение методологий и 100% покрытие тестами. Если только компания не нарастила солидный капитал и не может позволить себе нанять большую команду, которой потребуется всего 3 месяца на всё про всё, вам просто придется быть в «режиме сборки», а ваш продукт должен будет выпуститься за 3 месяца.

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

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

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


[customscript]techrocks_custom_after_post_html[/customscript]
[customscript]techrocks_custom_script[/customscript]

Оставьте комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Прокрутить вверх