Чи шкідливі для ранньої кар'єри шкоди присвяченого програмуванню технічного обслуговування?
Найчастіше - ТАК, якщо вважати:
- що кар'єра тут означає досвід багатьох технічних навичок.
- що ви проводите там більше X років, де Х достатньо, щоб "встановити" свої способи мислення.
- що ти нічого не робиш осторонь.
- що "виділений сервіс" (див. EDIT, нижче) означає, що ви не кодуєте для підтримки , а також кодуєте нові речі, але майже завжди кодуєте, щоб підтримувати або навіть працювати над проектом у режимі обслуговування - жодних нових функцій, найменш, не потрібно зміни коду, щоб виправити помилку.
Це не означає, що це завжди так.
Людям, що підтримують програмне забезпечення, рідко рекомендується (див. EDIT, нижче) робити дослідження, рідко можуть підключити нову бібліотеку або БД і витратити кілька днів, щоб дізнатися, як це працює. Це (як правило) стабільна робота, яка вимагає мінімальних змін до існуючої бази коду і, таким чином, «формує» спосіб, як ви згодом вирішите проблеми. Я можу назвати досить багато компаній, які мають політику щодо забезпечення програмного забезпечення, яка прямо говорить про "менші зміни коду = краще", незважаючи на погані речі, які це може принести.
Чи праві інші програмісти уникати таких ролей?
Я знаю дуже хороших керівників, які люблять свою роботу і не хочуть претендувати на щось інше саме тому, що їм зручно там, де вони є. Не всі люблять раз у раз дізнаватися нове. Отже - уникайте або шукайте його залежно від ваших уподобань.
Чи заважає ця лінія роботи заважати виконувати подібні завдання, якщо ви не готові починати спочатку як молодший?
Найчастіше - ТАК. Тому що ви вже маєте досвід робити це, тому що ви вже «знаєте мотузки» і т. Д. Але зміна, безумовно, можлива і може статися без подачі заявки на посаду молодшого віку. Ви вже почали робити справи в сторону, продовжуйте це робити! Це насправді дуже варте і може скоротити «прогалину кваліфікації», яку ви помітили.
EDIT: Ден наголосив (дуже правильно), що завдання технічного обслуговування часто можна виконувати за допомогою досліджень. Це правда. Я змінив відповідь вище в двох місцях, щоб краще вирішити цю проблему.
Такі завдання, безумовно, МОЖНА робити так, і якщо вони є - чудовими! Однак більшість ВІДДАЛЕНОГО обслуговуючого персоналу систем LEGACY мають політику чи очікування керівництва та строки, які - знову ж таки, частіше за все - змушують їх вирішувати проблему з найменшими можливими змінами. Часто тиск досить високий, що навіть якщо ви зможете зробити це таким чином, ви можете не захотіти. Особливо, якщо це не ВАШ код: без теорії (відповідно до Райла та Наура) за ним ви ризикуєте пошкодити більше, ніж ви виправите.
Проте слід зазначити: у мене немає жорстких глобальних даних, я кажу з власного досвіду - працював у ситуації ОП, я набирав людей з 4 - 10-річним досвідом роботи в якості обслуговуючого персоналу, спілкувався з багатьма обслуговуючими особами, і я знаю людей, які працюють як віддані обслуговуючі працівники . Не лише люди, які кодують нові речі, але і кодують підтримку проекту - спеціалізоване обслуговування, у якого єдина робота - робити помилки та патчі та навіть не одну нову функцію, адже це старий проект, і він зараз знаходиться лише в режимі обслуговування.