Я працюю над невеликою командою в середній компанії, більшість з яких не займається розробкою програмного забезпечення. Я найновіший і найменш досвідчений розробник і не мав професійного чи академічного досвіду програмного забезпечення перед початком роботи, але я дуже задоволений тим, наскільки поважаю мій внесок, і я вдячний за те, що на такому ранній стадії моєї кар’єри сприйняли серйозно.
І все-таки я відчуваю, що мені слід більше займатися цією великою кількістю ефірного часу. Як команда, ми, мабуть, маємо проблеми з виконанням справ. Мені б хотілося запропонувати щось покращити ситуацію, і я думаю, що мене слухали б, якщо це була гарна ідея, але я втрачаю те, що запропонувати.
Що я можу визначити як проблеми, це:
- Специфікація завдань, що є у вас, є рідкою. Частково це пояснюється тим, що управління - це вузьке місце, і у нас немає грошей чи людей, щоб взяти на себе зобов’язання розробити детальні вимоги настільки, наскільки ми хотіли б. Це також частково тому, що програмне забезпечення, яке ми розробляємо, є слідчим і точний метод не зрозумілий, поки його не продемонструють та не використають для визначення його ефективності.
- Ведучий Dev дуже любить те, що він називає «прототипуванням» до того, що останнім часом він наполягає на тому, що все є «прототипом», що для решти з нас виглядає як написання поганого коду та надання його моделерам, щоб грати. Не ясно, що він очікує, що у багатьох випадках вийде з цієї вправи. Тоді реальна реалізація страждає через його наполягання на тому, що добра практика вимагає занадто багато часу від складання прототипів. Мені навіть не вдалося розплутати цю скручену логіку, і я не впевнений, що хочу спробувати.
- Очікується, що модельєри розкажуть нам все про бажану методологію докладно, і вона бере на себе абсолютну довіру, що те, з чим вони виходять, теоретично бездоганне. Це навряд чи вірно, але не вживаються заходи для виправлення цієї ситуації. Ніхто з боку моделювання не викликає жодних занепокоєнь структурованим способом, який, ймовірно, буде діяти, і не шукає рекомендацій щодо застосування кращих практик. Нічого не робиться і щодо їх пасивності.
- Я раніше намагався підштовхнути TDD до команди, але мені було важко, оскільки це для мене нове, і хоча ті, хто наглядає за моєю роботою, готові були це терпіти, ентузіазму ніхто не викликав. Я не можу виправдати кількість часу, який я витрачаю на валяння та не доопрацьовуючи функції, тому від цієї ідеї поки що відмовилися. Я стурбований, що його знову не візьмуть, бо ніхто не любить, щоб йому говорили, як робити свою роботу.
- Зараз у нас є сервер безперервної інтеграції, але він використовується в основному лише для запуску багатогодинних тестів регресії. Залишилося відкритим, що він також повинен працювати з блоком повного покриття та інтеграційними тестами, але наразі їх ніхто не пише.
- Кожен раз, коли я піднімаю питання про якість провідного розробника, я отримую відповідь про те, що "Тестова функція A є простою, функція B набагато важливіша для користувача, але занадто складна для тестування, тому ми не повинні тестувати функцію A '. Ще раз я не зробив жодного пробігу, намагаючись розплутати цю логіку.
.... феу. Коли я його так фразую, це виглядає набагато гірше, ніж я думав. Я гадаю, як виявляється, це крик про допомогу.