Лідерство не бачить значення в стандартному процесі для конфігурації машини та нової орієнтації розробника


9

Близько 3 місяців тому наш провідний веб-розробник та дизайнер (та сама особа) покинув компанію, зелені пасовища стали причиною відходу. Добре для них я кажу. Моя проблема в тому, що його відділ був повністю недокументований. З моменту лівої справи все складно, є багато знань як теоретичних знань, які ми використовуємо для цитування нових проектів, так і технічних знань щодо впровадження існуючих продуктів, які ми втратили внаслідок його відходу. Моя нормальна роль - як менеджер із продуктів (для самих наших продуктів), так і як бізнес-аналітик для деяких наших консультаційних робіт на базі проектів. Я навчив себе кодувати за останній рік і, прагнучи продовжувати рухатися вперед, я ' Я взяв на себе завдання налаштувати мій ноутбук як розроблювальну машину з надією реалізувати деякі простіші запити на функціональні можливості та виправити деякі помилки, що не сприймаються, які надходять у нашу систему квитків. Але ніхто не знає, як взяти свіжу машину Windows і налаштувати її на безперебійну роботу з нашими виробничими програмами.

Я попросив мого начальника, який все ще контактує з розробником, який виїхав, попросити його документувати та створити процес для вбудованого нового розробника, встановлення програмного забезпечення, необхідних пакетів, процес розгортання на сервери додатків для виробництва тощо. Ніхто з це існує, і я крутив колеса, намагаючись змусити мій комп’ютер працювати як машина функціонального розвитку. Але вона, схоже, не розуміє необхідності такого процесу. Мабуть, новий розробник, який замінив того, хто пішов, використовував машину, попередньо налаштовану для нашого середовища, тож навіть новий розробник не зміг налаштувати нову машину, якби ми додали іншого розробника.

Моє запитання складається з двох частин:

  1. Чи помиляюсь я, вважаючи, що повинен існувати процес вбудованого та налаштування нового комп'ютера, який є частиною нашої екосистеми розвитку?

  2. Я буду дитиною, і я повинен сам розібратися в процесі і створити документ?


1
Багато чого залежить від використовуваної технології та інших деталей. У деяких стеках технологій можна знайти найважливіші залежності, які потрібно встановити в декількох файлах конфігурації, в інших випадках це потрібно задокументувати. Я думаю, що розробник, який зараз працює з системою, повинен найкраще знати, яка інформація є абсолютно важливою.
thorsten müller

2
І це повинно бути уроком у житті. Налаштування речей - це половина роботи, переконайтесь, що все не зруйнується, коли ви підете - це друга половина.
MrFox

Мене це починає засмучувати, я намагаюся проявляти ініціативу, але у мене відсутні деякі проблеми з конфігурацією (я розміщу інформацію про помилки specifc при переповненні) Стек такий: MS SQL сервер, Visual Studio 2008, Візуальне джерело Safe, IIS 7, код програми ASP.NET.
OpenCoderX

1
Візуальне джерело Безпечне так? Якщо це так, я підозрюю, що все, що робив попередній хлопець, не було жахливо блискучим. Потім знову, принаймні, є контроль над джерелами.
Wyatt Barnett

1
Я GIT вмираю важко. Як тільки я отримаю версію веб-сайту, що працює на локальному рівні, я використовую GIT для відстеження змін, а потім лише заїзд у головну гілку GIT до VSS. Контроль джерела в межах управління джерелом.
OpenCoderX

Відповіді:


5

Перш за все, дивно, що розробник повинен налаштувати робоче середовище. Це завдання, як правило, для системних адміністраторів. Отже, беручи до уваги, що це зовсім не те, що ви повинні робити, ви маєте право сподіватися, що хтось інший зробить це за вас.

У більшості (якщо не у всіх) компаніях є термін сповіщення. Зазвичай вона становить від тижня до місяця. Але в будь-якому випадку цього часу вистачає людині, яка виїжджає, щоб допомогти компанії _ скласти деяку документацію, додати коментарі до коду, задокументувати архітектуру тощо. Боюся, що зараз це занадто пізно, але не забувайте про це наступного разу хтось піде.

Ви абсолютно праві розраховувати, що має бути процес створення нового середовища. Насправді, якщо ваша компанія зростає і у вас є більше розробників, ви зіткнетесь з тією ж проблемою - це може бути важким аргументом, щоб переконати свого шефа. Ви навіть можете використати аргумент, щоб переконати керівництво найняти системного адміністратора для таких завдань (я припускаю, що у вас його немає, оскільки ви зіткнулися з проблемою). Крім встановлення середовища розробки, якщо у вас є нова машина, вона має бути інтегрована в локальну мережу тощо.


У нас є системний адміністратор, і їхня позиція полягає в тому, що вони налаштовують машину за допомогою базового доступу до мережі, прав користувача (Active Directory) та встановлюють будь-яке програмне забезпечення. Наприклад, мені довелося працювати з адміністратором мережі, щоб встановити Visual Source Safe та Visual Studio, але після встановлення на цьому закінчуються їхні знання. Ніколи не було їхнім завданням робити ці конфігурації.
OpenCoderX

1
Можливо, я занадто зіпсований _ наш адміністратор sys навіть може виконувати sql-запити при публікації проекту (не знаючи sql))). У цьому випадку вам обов'язково потрібно мати документацію))
superM

У багатьох компаніях, особливо параноїдальних або некомпетентно керованих, "термін сповіщення" - це час, який потрібно піти з відділу кадрів або офісу менеджера, щоб відмовитись від того, щоб його супроводжували за короткий час.
jfrankcarr

Я думаю, що ведучий, який залишився, дав кілька тижнів повідомлення, але які речі він зробив, щоб підготувати нас до його від'їзду, я не знаю. Я думаю, що вони здебільшого навчали заміну, яка була добре, але машину, яку вони використовують, встановила людина, яка виїхала. Я повинен був застрягнути ніс у ситуації трохи більше, але до тих пір, поки їх програмування на виїзд для мене було лише хобі. Мене повернули назад, коли я виявив, що наш новий розробник знає приблизно стільки, скільки й мене про створення нової системи.
OpenCoderX

Це буде різним для різних компаній, але скрізь, де я працював, процес конфігурації машини повинен бути задокументований як вимога депонування.
ДжонЛ

5

Чи помиляюсь я, вважаючи, що повинен існувати процес вбудованого та налаштування нового комп'ютера, який є частиною нашої екосистеми розвитку?

Ні. Наявність цих процесів дозволить уникнути проблем, з якими ви вже стикалися. У деяких великих організаціях є стандартне зображення диска про те, як повинна виглядати машина розробника. Коли наймається новий розробник, наявний комп'ютер з потрібними технічними характеристиками витирається та повторно знімається за допомогою цього образу диска "розробника". Стандартний контрольний список (іноді включає встановлення програмного забезпечення після обробки зображень для певних інструментів, не включених у зображення) дотримується техніків, які роблять це для того, щоб усі машини розробників починали однаково (користувачі можуть налаштувати та змінювати їх після отримання їх - на власну небезпеку!).

Аналогічно, деякі програми із сумно складними налаштуваннями мають документи, що пояснюють новим розробникам, як перевірити код, налаштувати сервер, а також створити та локально розгорнути додаток. Один додаток навіть має сценарій налаштування лише для робочих станцій, щоб полегшити цей процес.

Я буду дитиною, і я повинен сам розібратися в процесі і створити документ?

Ви є, але лише трохи. Одне сказати, що це повинно було бути задокументовано давно, і розробник, який виїхав, повинен був здійснити повну передачу знань у свої дні заміни (або, якщо це можливо, тижні), перш ніж вони виїхали. Це здається, що нічого з цього не сталося, і все одно в минулому.

І що тепер? Я сумніваюся, що розробник, який виїхав, буде дуже корисним. У них вже є нова робота, і хто знає, чим вони зайняті у своєму житті. Я сумніваюся, що існують юридичні підстави, які ваш менеджер може використати, щоб змусити їх допомогти. Було б добре, якби їм було потрібно кілька годин власного часу, щоб відповісти на деякі запитання, але не розраховуйте на це. Схоже, ви зациклювались на тому, щоб зрозуміти більшу частину для себе. Це дає вам можливість ретельно задокументувати належний процес і правильно його встановити. Ті, хто піде за вами, будуть вам вдячні за це! Удачі!


1

Перш за все, вам потрібно зійти з Visual SourceSafe. Я думаю, що це потрібно сказати. Як мінімум, переходьте до TFS. Є й інші варіанти.

Тепер, коли це неможливо. Я думаю, що це випадок "якщо ви хочете, щоб все було зроблено правильно ..." Ваша кінцева мета повинна полягати в тому, щоб розробник міг увімкнути його щойно встановлену машину, підключитися до джерела, отримати найновіший, натисніть f5 (або все, що ви використовуєте для свого запустити ярлик програми) та мати робочий додаток.

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

Існує декілька книг про те, як перенести своє оточення до стану більш віддаленого стану. Мені подобається безперервна доставка та безперервна інтеграція із серії Fowler, але є й інші варіанти.


1

Коли я розпочав свою теперішню роботу, у нас була задокументована процедура налаштування ПК для розробників.

Я самостійно дотримувався процедури, рішуче уникаючи «допомоги» існуючої команди.

(Знання повинні бути втілені в документі, а не розробника, який був найдовшим.)

Я відзначив процедуру змінами на червоній лінії, коли вона була неправильною або неповною, а через тиждень була дві речі: процедура, яка працювала, і робочий ПК для розвитку.

Після відмови жорсткого диска через рік, для відновлення знадобилося 2 дні.

Скажіть своєму начальнику: якщо жорсткий диск вийде з ладу на цьому ПК, розвитку не буде!

Я вирішив, що 2 дні - це марність двох днів ...

Зараз ми використовуємо віртуальні машини з зображеннями дисків для кожного проекту розвитку.

Налаштування полягає в тому, щоб скопіювати зображення VM на цільовий ПК та запустити його. Ви натискаєте піктограму "runme", яка запитує ваше ім'я користувача, а потім змінює ім'я користувача, яке використовується для доступу вихідного коду до вашого власного. Він також змінює порожнє поле автора документа IDE на ваше ім'я.

(Я написав runme приблизно за 2 години, ми розробники, ми програмуємо наші проблеми)

Наші ПК для розробників - це стандартні машини, за винятком сервера VM.

Ми використовуємо virtualbox, що не дорого.

Використання віртуальних машин робить заміну машини не 20-хвилинною роботою, яка не вимагає . Це завдання було б швидше, якби у нас був гігабітний Ethernet для копіювання VM.

Повне відкриття: я керівник команди, де працюю, і менеджмент дає мені безкоштовний крок.


Я часто замислювався над тим, як робити VM замість того, щоб налаштувати все на ПК. Приємного, незайманого VM для розробки, і не хвилюйтеся, що IT-хлопці змусили оновити, щоб накрутити вашу систему розвитку.
Джоель Рондо

Одного разу я налагоджував програму C ++, яка взаємоділа з багатьма системними DLL, коли запускалося антивірусне оновлення. Це змінило деякі DLL. Здогадуюсь, я більше не збирався відтворювати цей тест.
Тім Вілліскрофт

0

Повинна бути деяка документація, яка говорить про те, яке програмне забезпечення потрібно для компіляції та запуску програми.

Повинна бути також документація, в якій зазначається, що потрібно клієнтській скриньці для запуску програми.

Вони не той самий список.

Якби ваша компанія найняла нового розробника, як довго можна було б очікувати, щоб вони почали кодувати? День? Тиждень? Не знаючи, яке програмне забезпечення потрібно для складання коду, це може бути процес проб і помилок, який може зайняти деякий час. Але це має бути лише те, що потрібно зробити один раз.

Моє запитання: чим займається новий розробник? Це має бути його робота, а не ваша. Він є заміною іншого хлопця. Так, це гарно, що він потрапив у середовище без документації, але це має бути його завдання документувати речі. Попросіть його сісти і розібратися, що таке середовище розвитку, і задокументувати це. Запропонуйте йому розібратися та задокументувати, що потрібно для запуску програми на вікні клієнта.

Щодо зв’язку зі старим розробником, я б не став. ІМХО, якщо розробник покине компанію, яка не має жодної документації та передачі знань, вони сподіваються, що вони будуть покликані виконати якусь роботу за консалтинговим курсом. Це непрофесійно і не повинно винагороджуватися. Так, це може зайняти деякий додатковий час, щоб це зрозуміти для себе, але ви / команда дізнаєтесь щось у процесі, і випущена документація буде актуальною та актуальною.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.