Колко часа на ден може да работи програмист Отговорете версии от Yandex
Този път попитахме разработчиците на Yandex за нещо, за което не се спори често, но за което всеки мисли в даден момент от живота си. Колко часа на ден могат да работят програмистите? На кого са по-близки - на артистите или на работниците във фабриката? За тях ще важи ли осемчасовият работен ден? Програмистът работи ли, когато пие кафе или спи?
Този път на въпросите ни отговориха не само тези, които работят в офиса на Yandex в Москва – отидохме и при нашите колеги в Нижни Новгород, за да получим малко по-разнообразни мнения.Антон pg83 СамохваловМосква. 9 години в Yandex.
Дойде на пазара като C++ програмист. Работил е по различни сервизни задачи. Няколко години по-късно той се премества в търсенето, където се фокусира върху надеждността и ефективността на търсенето по време на изпълнение. Сега той работи върху система за изграждане, която ще ни позволи да изградим цялата си кодова база за няколко минути в голям разпределен клъстер.

Да, колкото иска, толкова може да работи. Имах моменти, когато можех да пиша код по 15 часа на ден, а също така се случваше да не можеш да напишеш нито един ред на ден. Зависи какво правиш и как. Понякога пишеш пет реда, но те са много трудни и наистина си ги изработил, а понякога пишеш хиляда, но те не са за нищо. Просто седиш и ги пишеш. Ако говорим за мен и моя работен ден, то той за мен е напълно нестандартен. Мога да работя вкъщи, мога да работя в офиса. Събуждам се, чета поща няколко часа, отговарям на писма, чета рецензии. Всъщност четенето на рецензии, оценката на кода на някой друг също е голяма част от работата. Тогава мога да програмирам малко, да общувам с хората. Мога да прекарам 10 часа на работа, мога да се справя самчас и работа от вкъщи през останалото време. Общо взето всеки е различен. Някой може да работи 8 часа, а някой - 20.
Степан КолцовМосква. 7 години в Yandex.Старши разработчик в услугата за разработка на системи за съхранение и обработка на данни. Стьопа е един от онези служители на Yandex, които напуснаха, но след това се върнаха. В момента работи върху системи за наблюдение при търсене.

Първо, много зависи от работната среда, къде работи човек, дали му пречат. Ако стаята е шумна, тогава работата повече от три часа е много трудна. Второ, върху това, което програмистът прави в момента. Рутинните задачи могат да се изпълняват непрекъснато - спокойно включете музиката и я направете. Има моменти, когато трябва да седнете и да помислите здраво за нещо. В такива случаи чистото програмиране може да не отнема много време, но през останалото време, когато човек седи, мисли, глупава, гледа фейсбук, той всъщност също работи, защото понякога, за да напишеш код, трябва да помислиш как да го напишеш. И аз съм убеден, че мисленето продължава не само когато мислиш директно за него, но и когато мислиш за нещо свое: вървиш по улицата, гледаш дърветата. В главата ви тече някакъв фонов процес, който ви кара да разберете какво трябва да се направи. Понякога, когато човек идва на работа и е глупав, всъщност той също работи в известен смисъл.
Александър Садовски СадовскиМосква. 10 години в Yandex.

Сферичният програмист във вакуум може да работи, докато не заспи. Още си спомням как приятелят ми дойде преди защитата на дипломата си с отпечатъци от клавиатура по лицето, защото правеше диплома през нощта, заспа и нищо не можеше да го събуди. Ако говорим запродуктивен труд, то смятам, че тук всеки трябва да си хване ритъма. Намерете своята комбинация от релаксация и общуване, което е много важно, защото по време на нея възникват нови идеи, раждат се нови концепции, разбирате нещо, което не е наред в кода ви.
Седенето пред компютър за отстраняване на грешки в програма или писане на код рядко е продуктивно за повече от няколко часа подред. И програмирането четири часа подред е ефективно, според мен това е супер резултат. След тях се изискват почивки, някакво ново вдъхновение и според мен е трудно да се говори за някакъв официален работен ден. По-скоро тук трябва да се каже за правилното редуване на различни периоди: състоянието на потока със състоянието, в което се занимавате с по-рутинни задачи, отстраняване на грешки, когато ругаете всичко на света и търсите тази грешка и се опитвате да разберете защо всичко се срива, какво е то.
Артьом Бреква КуликовМосква. 8 години в Yandex.
Yandex беше извикан за анализиране на данни от търсенето в блогове с помощта на Perl. Призоваха не само да се карат, но и да работят. Дълги години правех търсене в блогове, по-специално бях основният разработчик на подуслугата Yandex.Pulse. Сега той разработва Advertising Network, една от най-критичните услуги по отношение на устойчивостта на грешки.

Приложим ли е осемчасовият работен ден? Въпросът е всеки ден да работим по осем часа или не всеки ден. Понякога се случва да си се удавил и това е - седиш дълго, а после се събуждаш и вече е средата на събота. Не знам средното време, през което един програмист може да работи, но минимумът е нула. Не можете да работите изобщо, ако веднага не забележат, че не правите нищо, но можете - докато не паднете. На практика, освен работата по писане на клавиатурата, има и работа за мислене, има още работаговорете, смушкайте някого и попитайте: „Защо още не си направил нищо?“ Или бръкнете и попитайте какво сте направили и защо е така. Всичко това заедно се вписва в осемчасов работен ден. Можете да прекарате осем часа на работа и през цялото време да правите нещо полезно. Но не цялото това време ще бъде изразходвано за работа с кода.
Алексей Капа КапрановМосква. 3 години в Yandex.
Веднъж той беше ръководител на Rambler-Mail. В момента той управлява групата за инфраструктура за лични услуги в Yandex. Lyosha разказа на Habré как научихме Mail да обменя писма през IPv6 и да поддържа SSL криптиране.

Има такъв добре известен, макар и малко противоречив китайски цитат: „Човек, който е намерил работа, която обича, не работи нито един час в живота си.“ Един ентусиазиран програмист със сигурност може да работи по 10-15 часа на ден без вреда за здравето.
Алексей ЗахаровМосква. В Yandex — 6 годиниРъководител на разработката на Java в отдела за разработка на облачни услуги.

Програмистът също е човек. Той не само програмира, но и мисли какво трябва да програмира, участва в някакви срещи, за да разбере какво искат колегите му да програмира, да сподели някакви идеи. Всичко зависи, разбира се, от човека, неговата възраст, ритъм, колко здравословно води. Струва ми се, че 8 часа линейно програмиране на ден е трудно. Въпреки че вече съм наполовина шеф и наполовина програмист, гледам да върша всичко, свързано със сложна работа по програмиране, сутрин, когато главата ми е свежа. И би било хубаво какво ще правя сутрин да мисля за това вечер. Когато бях в университета, ми се стори, че програмирането е нещо многолесно, защото беше приятно и интересно. С времето разбирам, че е трудно.
Андрей МищенкоМосква. 9 години в Yandex.
Той дойде в Yandex като C++ разработчик, дълго време беше ръководител на разработката на Blog Search и пишеше на Perl. Андрей е кандидат на физико-математическите науки. В момента работи с Андрей Гулин за подобряване на алгоритмите за машинно обучение при търсене.

Когато участваме в ICFP, ни се дават три дни, в които трябва да напишете най-добрата програма. Отделяш си време за сън, разбира се, но учиш по няколко часа на ден и така програмираш и трите дни, доколкото ти стига работоспособността.След това обаче трябва да си тръгнеш за една седмица, но при спешни случаи това е нормално. Можеш и четири часа да работиш, и 10. Това не е копаене на окопи - главата се уморява от други механизми.
Сергей СВ ВавиновМосква. В Yandex — 6 години
Дойдох в Yandex като разработчик в Yandex.Video. Той беше основният в развитието на Музиката, след това - в обслужването на медийните услуги. Направи няколко проекта за Yandex.Disk. Сега той е ръководител на групата за технологии за големи данни. Една от задачите, върху които работи Сергей, са проекти на Yandex за CERN.

Програмистът може да работи осем часа на ден или повече. Зависи от проекта и колко страстен е човекът, доколко е влязъл в потока. За себе си се опитвам да огранича този въпрос в известен смисъл. Има периоди, в които седя и програмирам по 12 часа подред. След това се чувствам някак си напълно тъжен: не искам да изляза на улицата и настроението ми се влошава. Но ако ограничите и нарежете на парчета, работите четири часа, тогава ще бъде перфектно. За да разрешите проблем, трябва да напишете код, който съдържа съдържаниепотопете се в такова специално състояние за няколко часа - само четири часа. Следователно осемчасовият работен ден е как да се брои. Ако два пъти по четири часа, можете да решите две такива задачи. Може да не си струва да работите осем часа подред.
Григорий Бобук БакуновМосква. 10 години в Yandex
Веднъж дойде да работи като системен администратор, а сега е директор по разпространение на технологии.

Зависи, разбира се, от програмиста. Той може да работи 24 часа на ден, но ако говорим за ефективна работа, директно програмиране, тогава има много проста норма. Казвам, че всички творчески работници - търговци, художници, музиканти, програмисти - никога не могат да работят повече от четири часа на ден. Нещо в мозъка не им позволява да вършат творческа работа повече от това време. Дори ако сега говорите с програмисти, които са програмирали 20 часа подред, се оказва, че около 3-4 часа са били ангажирани с творчески дейности, останалото е похарчено за коригиране на грешки, измисляне как правилно да се реализира идеята им и т.н. Творческата дейност отнема 4 часа. През останалото време можете да правите каквото искате. Познавам програмист, който изработва дневната си норма за 2 часа, но пише много бързо.
Роман КашицинНижни Новгород. В Yandex — 1 година
Разработчик в екипа за разработка на системи за съхранение на геоданни.

Трудно е да се каже, защото не мога да работя в твърда рамка. Мога да работя, например, четири часа на ден и просто да се изморя, или мога да седя 12 часа без почивка - всичко зависи от вдъхновението или потока. Ако влезеш в потока и почувстваш, че сега ще успея, сега мога всичкода направите, тогава можете да работите много дълго време. Но два поредни дни не става така. Във всеки случай, ако няма вдъхновение, човек трябва да се опита да направи нещо, за да го получи.
Павел Кадовл СуховНижни Новгород. Три месеца в Yandex
Преподава в филиала на Нижни Новгород на Висшето училище по икономика към Факултета по бизнес информатика и приложна математика. В Yandex той е стажант в групата за разработка на съхранение на геоданни.

Трябва да се работи, докато работи, докато това бърза. Можете да работите 18 часа подред или можете да работите един час и да осъзнаете, че днес не можете да направите нищо повече. Работата на програмиста е много творческа, не можете да я направите насила, не можете да направите този осемчасов работен ден. Но има и опасна страна на този въпрос - ако позволите на програмист да работи, когато иска, тогава той може да иска да го прави три часа седмично. Но от друга страна, ако един програмист не иска да програмира, то това определено е лош програмист.
Андрей styskin StyskinМосква. 9 години в Yandex.

Ако само писането на код се счита за работа, тогава се съмнявам, че е повече от два часа на ден. И ако считате за работа времето, когато мислите за архитектура, преминавате през преглед на кода и имате предвид, че някой също ще използва това, което правите, тогава просто започва да се проточва осем, десет, дванадесет часа. И след това до късното седене в офиса, от което страдат всички наши разработчици.