Тест Джоеля добре відомий тест для визначення того, наскільки добре ваша команда. Що ви думаєте про моменти? Ви не погоджуєтесь ні з одним із них? Ви можете щось додати?
Тест Джоеля добре відомий тест для визначення того, наскільки добре ваша команда. Що ви думаєте про моменти? Ви не погоджуєтесь ні з одним із них? Ви можете щось додати?
Відповіді:
Джефф Етвуд має Білль про права програміста .
З поста:
- Кожен програміст має два монітори
- Кожен програміст повинен мати швидкий ПК
- Кожен програміст має вибір миші та клавіатури
- Кожен програміст повинен мати зручне крісло
- Кожен програміст повинен мати швидке підключення до Інтернету
- Кожен програміст повинен мати тихі умови праці
Здається, є деякі елементи, які я хотів би побачити у списку Джоела. Зокрема в області апаратних засобів (подвійний монітор, швидкий ПК, миша / клавіатура, зручне крісло, швидке з'єднання).
Єдине, що не згадується - це зручний та регульований стіл .
Все це можна додати, змінивши:
Поточний № 9: Чи використовуєте ви найкращі інструменти, які можна придбати?
до
Удосконалено №9: Чи використовуєте ви найкращі інструменти та обладнання, які можна придбати за гроші?
Цікаво, що пункт 8 тепер гласить:
8. Do programmers have quiet working conditions?
коли він читав (щось на кшталт)
8. Do programmers have their own office?
і останній абзац все ще починається:
Тепер давайте перенесемо їх в окремі кабінети зі стінами та дверима.
Я завжди підозріло ставився до цього тесту, оскільки у всіх місцях, де я працював - і як працівник, і як відвідувач, - єдині люди, які мають власні офіси, - це директори та вищі керівники.
Написання програмного забезпечення в реальному світі, як правило, є командною діяльністю, вам потрібно поговорити зі своїми товаришами по команді, щоб підстрибувати ідеї навколо тощо. Це важче зробити з людьми в окремих офісах, навіть із системами обміну миттєвими повідомленнями. Уміння намалювати речі та показати людям код та діаграми дуже допомагає. Це не означає, що розподілені команди не можуть працювати - вони, очевидно, можуть і робити, це просто інший набір проблем.
Що б я сказав, це те, що кожна команда повинна бути у власному кабінеті з 6-8 осіб (якщо припустити, що це розмір команди). Таким чином вони можуть взаємодіяти, не заважаючи іншим командам (якщо такі є) і продовжувати свою роботу, не турбуючи торгового колективу чи відвідувачів (в одному місці, де я працював, ви заходили через вхідні двері прямо в зону розвитку).
Якщо ви працюєте з іншими розробниками, але кожен працює над окремими проектами, то спільний офіс може бути корисним - але лише в тому випадку, якщо ви суворо ставитеся до засідань до зали засідань та дотримуєтесь інших термінів тощо.
Більшість інших є істинними істинами.
Єдиний вимикач для мене - це:
8. Do programmers have quiet working conditions?
Цікавим є те, що питання, швидше за все, не вдасться оприлюднити роботу Stack Overflow.
Деякі питання важко відмовити, особливо якщо в компанії є більше одного програміста:
1. Do you use source control?
2. Can you make a build in one step?
4. Do you have a bug database?
Більшість інших мене не дуже цікавить. Я маю на увазі, чесно кажучи:
12. Do you do hallway usability testing?
Існує один, щоб виявити брехунів:
5. Do you fix bugs before writing new code?
Треба сказати, що це хороша «базова лінія», але з будь-яким вимірювальним інструментом є інші фактори. Наприклад, жодна компанія, над якою я працював, не робила Daily Builds (я знаю, я знаю), але деякі з них були дуже хорошими.
У мене особисто є кілька інших пунктів, які я б додав до списку.
Більше всього, ці речі "мене розчарували" від попередніх роботодавців, і тепер вони швидко запитують питання, які я задаю про кожну можливість.
Я згоден з більшістю пунктів Джоеля. Я не дуже впевнений у "тестуванні на корисність передпокою". Тестування на працездатність, звичайно, але насправді схопити когось із передпокою і змусити їх перевірити вашу програму, хоча це не їхня робота? Це здається чудовим способом відзначити людей.
Тест Джоеля не перевіряє, наскільки хороша команда. Він перевіряє, наскільки добре ваша команда дотримується тесту Джоеля.
Ось кращий тест на те, наскільки хороша ваша команда. Я називаю це тестом GrandmasterB. У нього одне питання.
1) Чи корисне програмне забезпечення, яке ви пишете?
Для мене не має значення, чи ви "тестуєте передпокій" чи ні, або який у вас контроль над джерелами, або який у вас процес збирання (якщо такий є - не кожен прапор має їх). Справжньою мірою команди є якість створеного ними програмного забезпечення.
В основному, ви можете дотримуватися кожного кроку тесту Джоела, і все-таки закінчуєтесь лайним кодом та продуктами, які ніколи не поставляються. Наприклад, керування джерелами не магічно робить когось кращим; це полегшує управління кодом. А наявність останньої версії Visual Studio не означає, що ваша програма працюватиме краще, ніж якби вона була написана з Visual Studio 2005 .
Хоча я вважаю, що це має сенс у загальному сенсі, я знайшов цей список досить орієнтований на певний тип програмного забезпечення, яке робить Fog Creek Software ( скорочується ). Це насправді не дивно, адже він також розповідає про це на іншій посаді, П’ять світів . І поза цим світом існує маса розробок.
Існують деякі умови, які насправді не мають великого сенсу, якщо ви розробляєте, наприклад, вбудоване програмне забезпечення для супутника або торгового автомата, наприклад, щоденні збірки (3) або тести на зручність використання (12).