Упорство, а именно умение «биться головой в стену» до победного. Увы, когда работаете над сложной задачи, шансы, что она будет решена с первого раза, крайне малы. Иногда приходится начинать снова и снова, а затем, после тестирования вроде бы уже полностью готового проекта, еще раз – начинаем снова. На этом этапе хочется просто сдаться, выкинуть компьютер в окно и уехать в горы (кстати, многие так и делают).
Однако программист не имеет права сдаться, алгоритм не может быть не завершен, а программа – написана наполовину. Придется сидеть, думать и снова писать код, лишь изредка ловя себя на мысли: «и пусть весь мир подождет».
Наслаждайтесь тем, что вы делаете
и вы никогда в своей жизни не будете работать.
Билл Гейтс
У программиста есть три пути, от выбора которых зависит его дальнейшая судьба, как творческой личности, специалиста и бизнесмена (да, представляете?). Первый путь – это стабильная и спланированная карьера на работе по найму. Второй – это «сумасшедшее», всестороннее, профессиональное развитие на фрилансе (попроектная работа – выполнил проект, получил оплату, следующий…). Третий путь – разработка собственных программных продуктов с целью предоставления их пользователям (не бесплатно конечно). Все три направления имеют свои плюсы и минусы, в теории вы можете двигаться по всем сразу, но на практике возможно потянуть максимум одно или два.
Например, работать над собственным проектом и время от времени брать заказы на фрилансе для поддержания финансового благосостояния, в надежде на то, что, когда завершите собственный проект, он «выстрелит» (а он обязательно выстрелит!). Или можете работать по найму, строить карьеру, а в выходные по вечерам с коллегами писать собственный проект. Или даже экстремальный вариант (по уровню нагрузки), работать по найму, а в нерабочее время брать заказы на фрилансе. В перспективе, получить постоянных клиентов и брать заказы только от них, почему бы и нет. Конечно же, выбрать что-то одно тоже можно.
Я хочу поделиться с вами собственным опытом в работе по всем трем направлениям (не одновременно конечно), но с оговоркой: работать по найму на своем пути построения карьеры веб-разработчика мне приходилось не так часто. И в большинстве случаев я выступал как партнер или подрядчик, но не как наемный работник. То есть поистине познать все плюсы и минусы данного пути лично мне не представилось. Хотя у меня много друзей и товарищей, кто работает по найму более десятка лет, и поэтому мне есть, что про этот вариант рассказать.