Люди, которые только задумываются связать свою жизнь с разработкой, обычно видят все слишком идеализированно – высокие зп, крутые офисы и плюшки-плюшки-плюшки. А ведь сложности тоже будут. Мы собрали список моментов, на которые чаще всего жалуются программисты.
- Много общения с людьми
Это может показаться удивительным, не сфера обслуживания все же, но так и есть. Общение внутри своей команды, с проджект менеджером, тестировщиками, эйчарами, проведение технических собеседований и пр. А еще ежедневные Daily/Stand-up-митинги, на которых рассказываешь, что уже сделал, что планируешь и как это будет реализовано. Причем коммуникативные навыки – одни из важнейших софт-скиллов в работе программиста.
- Огромный объем информации
Есть хайповые языки и технологии, в которых постоянно происходит какая-то движуха. Тут только успевай учить что-то новое. Есть более устойчивые языки, в которых редко что-то меняется, например Java, однако объема информации, которые нужно освоить, все равно будет огромен. Вам также нужны знания баз данных и языка манипуляции с данными + изучение новых фреймворков. В программировании невозможно что-то выучить и на этом остановиться.
- Оценка сроков выполнения
Невероятно важный навык, который, тем не менее, проседает у многих программистов. Не только начинающих. И одно дело оценить задачу, с которой вы уже сталкивались, совсем другое – нечто новое для вас. А оценить нужно максимально точно. Ибо программист, который умеет укладываться в обещанные сроки перед глазами клиента выглядит на порядок профессиональнее.
- Нужно все и на вчера
С этим вы столкнетесь множество раз. Не зависимо от того, работаете ли в компании или на фрилансе. И задачи, на которые нужен минимум месяц, дается неделя. Видимо считается, что у программистов по 100 часов в сутках. Что ж, говорите реальные сроки (а для этого нужно уметь их оценивать) и делаете.
- Клиент не знает, чего хочет
«Ты специалист, ты знаешь лучше меня. Я тебе доверяю». Чаще всего это заканчивается тем, что когда вы показываете конечный (или промежуточный) результат, заказчик разочарован, так как ожидал чего-то другого. Поэтому делать что-то без четкого ТЗ и детального обсуждения нюансов не стоит.
- Рутина
Даже если вы любите то, чем занимаетесь, даже если увлечены своим проектом, от рутины никуда не деться. Все задачи не могут быть интересными, некоторые будут монотонными и скучными. Лучшее решение – найти баланс, чередовать интересные и не очень таски. Также помогает правило «Съесть лягушку», т.е. сделать самое сложное и неинтересное вначале, а потом приступать к остальному.
Да, все субъективно, возможно для вас все перечисленное не является сложностью. Что ж, тем лучше. Добро пожаловать в разработчики!