All streams
Search
Write a publication
Pull to refresh
57
0
Андрей Дегтярук @hlogeon

CTO

Send message
Кстати, забавно, но в том конкретном случае я даже при приеме на работу попросил увеличить испытательный срок до 3х месяцев(это аутсорсинговая контора, я предчувствовал с самого начала, но интерес взял верх), мотивируя тем, что надо присмотреться. Самое забавное, что потом их HR умудрилась мне звонить и угрожать, что устроит мне такие проблемы, что меня больше никуда на работу не возьмут :D
маленькая поправка, что бы быть не столь категоричным добавлю, что возможно, Вам просто > 30 лет ;)
Ну хз, я имел удовольствие работать в среде других людей и даже не на одном месте. С этими тоже доводилось, но больше 3х месяцев я в таких местах не задерживался. Мой рекорд — 5 дней работы и увольнение по собственному. Когда чувствуешь, что здесь ты попросту тратишь свое время и ты можешь значительно больше, даже если будешь тупо работать один, то какой смысл оставаться на таком месте? Лично для меня при выборе работы команда занимает одно из первых мест в списке моих требований(зарплата в этом списке почти в самом конце).
Если не интересно сидеть после 18, то вам и до 18 не интересно. Программирование само по себе не зависит от времени суток :D
Ну, во-первых, ничего противоположного в Вашем опыте я так и не увидел. Я прямо написал, что работа может навредить, особенно на ранних этапах. Еще хочется сказать, что работа именно в веб-студии — вообще худшее, что можно придумать. Моя первая работа была именно такой и ситуация была похожей. При том я не только не видел огня в глазах, но и ясно понимал, что даже самый «крутой» разработчик в этой конторе пишет код, который кажется ужасным даже мне — стажёру. Пробыл я там всего 3 месяца и свалил в крупную компанию, которая занимается разработкой одной из крупнейших российских торговых площадок. Там то мне начали открывать глаза на разработку и кровавый enterprise. Не скажу, что это был лучший опыт в моей жизни, но один самых важных. Под влиянием других программистов я ни в коем случае не имел ввиду какие-то видео или что-то подобное и уж тем более не имел ввиду кейсы, когда показывают «как надо». Как надо на самом деле никто не знает. Я подразумевал именно общение с коллегами, обсуждение реальных рабочих задач и их решений. И обсуждение не сверху вниз, а на равных с аргументами и здоровой дискуссией. Особо круто иметь в окружении людей с которыми можно на прогулке, или за кружкой пива обсудить программирование. ОСОБЕННО крутая вещь — код-ревью и парное программирование. Мне даже довелось познать счастье код-ревью от некоторых довольно известных разработчиков. Меня обосрали с ног до головы, но именно это сделало меня намного лучше, потому что мне не просто говорили твой код говно, сделай «вот так, так и так», а аргументированно сказали почему мой код говно и отправляли переделывать. И так происходило раз 10 подряд, пока я сам не дошел до решения которое удовлетворяло и меня самого и сообщество и бизнес.

А все остальное, что вы написали, лично для меня характеризует Вас как разработчика не очень хорошо. Но, опять таки, это просто потому, что вам, видимо не посчастливилось работать в реально классных командах, в которых есть чему и у кого поучиться. Но вот этот пункт меня аж прям расстроил:
просмотр предметов по всем курсам не радовал — базовые знания C/C++, история операционных систем, SQL и т.д


То есть вы всерьез и до сих пор, несмотря на какой-то(видимо значительный опыт) разработки считаете что это все ненужно? Да, наверное, для создание сайтов под ключ и прочих типовых интернет-магазинов это ни к чему, но веб-программирование на этом не ограничивается. Когда перед разработчиком встают серьезные задачи он должен, как минимум иметь возможность найти серьезные решения. А они далеко не всегда лежат в той плоскости, в которой мы привыкли работать. Вот тут-то и начинаешь вспоминать всякие дифуры, линейные алгебры тер.веры и прочие матаны. Я уж не говорю о том, что даже мне за свою не очень болшую практику приходилось писать расширение на C для PHP. Попробуйте поработать в компании наподобие Rocket-Internet, или какого-нибудь крупного финтех стартапа, например, всё поймете.
Боюсь, что главный дизайнер mailRu считает, что он хороший дизайнер(скорее всего так и есть) и просто не даст другому дизайнеру сделать всё «как надо».
Одно дло тянуть кого-то потому, что он слабее тебя, но хочет что-то делать и совершенно другое — тянуть кого-то, чья идея просиживать штаны и цели тянуться никакой нету, разговор-то об этом.
Самая главная ошибка, которую может совершить хороший дизайнер — пойти работать в MailRu. Вы уж простите, но ваши продукты с точки зрения именно дизайна, в том понимании, о котором вы говорили в самом начале — кромешный ужас. Несмотря на то, что в КАРТИНКА в последние годы стала лучше. Но картинка это не дизайн.
Вы опять говорите о дизайне, как о картинке. Дизайн это не то, как выглядит продукт. Дизайн это то, как он работает.
Так это, на мой взгляд, идеальная ситуация для проверки той самой состоятельности… Тут либо конформистское поведение возмёт верх, либо профессиональная этика. Всегда есть выбор: делать как коллеги (как начальство сказало, как «быстрее») или исходя из своего представления как должно быть. Иногда эти варианты могут и совпадать, но далеко не всегда.


Это тема долгой дискуссии, но я задам простой вопрос: Зачем мне работать в таком месте, когда я могу пойти туда, где коллеги будут тянуть не назад, а вперед. В таких проектах, как правило, в итоге приходится делать работу за других людей, что само собой не допустимо. Я уж не говорю о том, что такие «коллеги» скорее свяжут тебе руки, чем позволят показать преимущества нормальных подходов. Ну и последняя пуля моей аргументации в том, что тебе все-таки нужно работать в команде. С кодом, который пишут твои коллеги. Если даже ты производишь 10% кода(что очень много для серьезных проектов), то остальные 90% кода всеравно остаются говном. А тебе приходится постоянно иметь с ним дело. Трудно производить что-то хорошее, что должно взаимодействовать с говном… Даже если это удается, то конечный результат всеравно говно, пусть и с ложкой меда. Хочет ли хороший программист быть в такой ситуации — вряд ли.

О, это ощущение обычно бывает ещё в первый год… потом, правда, у адекватных людей проходит на значительное время )


Совершенно верно, спору нет. Но это никак не противоречит тому, о чем я сказал. Понятие все-таки субъективное и одних и тех же программистов разные люди оценят по-разному. Кто-то скажет, что «этот парень чертовски хорош», а кто-то скажет обратное. И каждый найдет аргументы. Многие вообще скажут, что хороший программист это программист, который решает задачи бизнеса без оговорок на то КАК он это делает и как на длинной дистанции его решения будут удовлетворять критериям бизнеса.
А насчет проходимости — тоже верно. Я вообще думаю, что это ощущение должно появляться и проходить переодически на протяжении всей карьеры. Ты как бы преодалеваешь перевал и видишь вершину. Карабкаешься на нее, а она оказывается не вершиной, а очередным перевалом. Все мы понимаем, что нет предела совершенству) Только в программировании у тебя не просто горы с перевалами, а эскалатор, который едет в обратную от твоего направления сторону и остановки в развитии тут череваты.
Не буду говорить за всех, но что такое http, чем один статус отличается от другого и из чего он состоит я знаю(хоть и PHP-обезьяна). Просто потому что вся моя работа своидится к определнной обработке запросов и отправке ответов. И основной протокол в моем случае — http. Хотя могу и про UDP рассказать и про модель OSI если уж очень невтерпеж будет. Но незнать такой базовой вещи как http, претендуя на позицию веб-разработчика это вообще какая-то дичь для меня, если честно.

Лично я просто составлял большой список вопросов разной сложности(да, для каждого проекта свой), но никогда не задавал их все. В основном, если искал кого-то на позицию выше Junior — строготехнические вопросы я почти не задавал. ИМХО, в процессе обычной живой беседы проще понять кто перед тобой, чем по каким-то вопросам конкретных реализаций. Технические вопросы использую такие, которые требуют пусть небольших, но рассуждений и ответ на которые можно вывести даже если ты их не знаешь. Все-таки нам больше важно как человек думает, а не что он знает. С Junior-разработчиками ситуация немного другая, потому что Junior по моему мнению должен быть в активной стадии обучения, а значит и память должна быть свежее. Более того, простые технические вопросы позволяют понять, насколько человеку вообще интересно программировать и что он вообще здесь делает. Очень круто, когда некоторые из них начинают вступать в дискуссию. Но, увы, все чаще и чаще, даже на позиции Senior в последнее время ко мне приходили людю, неспособные даже рассказать, в чем отличие абстрактного класса от интерфейса, что не может не печалить…
Кодеру не нужно, а вот программисту нужно 100%. Все-таки хороший программист отличается от плохого в том числе тем, что может выбирать правильные инструменты для решения поставленных задач, проектировать решения так, что бы они отвечали требованиям спущенным свыше, да еще и желательно предусматривать изменяемость этих самых требований. Ну и само собой — знание предметной области. Все это требует довольно широкого кругозора.
Не соглашусь. Мне было пофигу(и сейчас до сих пор так и есть), какой язык или стек. Начинал с Java, перекатывался в Python, потом PHP(sic!), потом NodeJS и вот теперь опять работаю в основном на PHP(было еще баловство с С++, Ruby и Haskell, но это для общего развития просто, а не для работы). Но суть в том, что та же неважность стека до меня дошла еще до того, как я даже устроился на первую работу и тогда же я уже делал свои Laba1… LabaN на разных языках, которые нам даже не преподавали.
При этом хорошим программистом я бы себя того не назвал(возможно и нынешний я не оч. хороший программист). Я бы сказал, что эти критерии каждый определяет для себя сам и найти единую точку зрения на это вряд ли возможно. И пользу проекту хороший программист принести может далеко не всегда. Иногда проекту как бы не нужна эта польза. Трудно ее приносить, когда вокруг тебя одни просиживающие штаны дядьки, сидящие на этом рабочем месте по N-дцать лет. Такому проекту хороший программист будет скорее во вред.

Так что я думаю, что человек состоялся, как программист тогда, когда он сам для себе это решил, либо это за него решило абсолютное большинство окружающий программистов. Желательно авторитетных.
Я не так давно из этого вышел. Универ я не закончил, однако программировать я начал еще за несколько лет до первого курса. На втором открывал свою веб-студию, а дальше стандартный сценарий — почувствовал вкус денег и почему-то решил, что в универе меня ничему не научат и вообще все не такие крутые, как я. Конечно, со временем это прошло, хотя о том, что отчислили я не очень жалею(по целому ряду причин). Так вот, возвращаясь непосредственно к вопросу скажу, что, имхо, тут главное — неподдельный интерес к профессии. Вам либо знакомы бессонные месяца у компа с открытой IDE\текстовым редактором и блаженство от решения задачи, либо нет. Вы либо пришли за деньгами(которых, кстати, в таком случае, с большой долей вероятности будет не так много, как вы хотели), либо потому что вы тащитесь от программирования. Вы либо постоянно учитесь и развиваетесь в этом направлении, либо нет.
Всё остальное на самом деле приложится, если голова на плечах есть. Конечно, очередного Кемпбелла из Вас с высокой долей вероятности не выдет, но ведь не это главное, верно?) И применимо это далеко не только к программированию. Просто нужно делать то, что должен делать не просто хорошо, а каждый раз пытать делать максимально хорошо, постоянно повышая собственную планку.

Если более конкретно. Курсы — лажа для неосиляторов. Вся информация на которой строятся курсы и так есть в свободном доступе(иногда за умеренную плату, которая всеравно не сравнима с платой за курсы). Сама по себе работа программиста подразумевает довольно уверенное владение навыком поиска информации, ее анализ и усвоение. Я бы даже сказал, что навык этот ключевой. Таже самая JAVA уже совсем не та, как была в мои университетские времена. Что делать? Идти на курсы, или все таки почитать интернеты и осиливать самому. Это я уже не говорю о куче смежных областей, которые приходится изучать из проекта в проект.
Свои проекты на ранних стадия по моему мнению вообще являются единственным способом обучения. Придумать проект проще простого, все мы ежедневно сталкиваемся с задачами, которые могли бы решать намного эффективней, в том числе с помощью ПО. Начинать можно с чего-то простого в духе всяких менеджеров паролей и калькуляторов. А дальше наращивать функционал пока не надоест. Как надоест — новый проект другой тематики. Лабораторные работы в универе не качать из интернета, а делать самому, несмотря на то, что 95% однокурсников пойдут по первому пути.
После того, как будет уверенность в своих силах и кажущееся понимание основ можно пойти на работу, но это довольно серьезный шаг, потому что работа может оказать совершенно противоположный ожидаемому эффект. А оценить уровень коллег на первых порах, думаю, просто невозможно. Можно найти себе «ложных авторитетов» и остаться в их болте.

Наибольшее влияние на меня, как программиста оказали именно другие программисты с которыми довелось работать. Точнее именно те, кто так же как и я любят эту работу, но намного превосходящие меня по своему уровню либо в силу большего опыта, либо интеллектуальных способностей, которые у меня, например, довольно заурядные.

Не лишним и даже очень полезным будет хотя бы на время влиться в Open-source. Во многих проектах есть сильные разработчики а коммунити не даст мержить пулл-реквесты с откровенным говном. Тратить время на ответы на вопросы на Stack Overflow тоже лишним не будет. Читать ответы тоже полезно. Общаться в «тусовке» программистов и обсуждать подходы, методологии, технологии, новинки из сферы разработки и так далее.

Эх, расписался чё-то, но надеюсь, ты прислушаешься к тому, что я написал. Если бы я это все знал раньше, наверное, я был бы намного лучше, чем есть сейчас :D
А Ваш опыт говорит Вам о другом? Ну тогда поделитесь, а не переходите на личности.
Да я же не в претензию вам что-то ставлю. По-человечески поинтересовался, для собственно развития, а тут, вон, даже заминусовали. О, времена! О, нравы! А вам отдельно спасибо за ра разъяснение :D
Да то что все хотят, что бы все работало это ясно. И то что все хотят, что бы их не обманывали тоже) Просто слово казуал в таком контексте реально раньше не слышал :)
блегчают работу с сайтом и диагностику проблем для специалистов всех уровней — от казуалов до веб-мастеров.


7 лет работаю в веб-разработке, но незнаю, кто такой казуал и кто такие веб-мастера. Если про веб-мастеров я еще могу догадаться, то кто такие казуалы — вообще нет идей.
Утро добрым не бывает :D
И что? Это решает все проблемы программирования и в нем их больше нет?) Цитаты из постов arvitaly которы утверждает, что программирование лишено проблем в принципе.

Information

Rating
Does not participate
Location
Бангкок, Таиланд, Таиланд
Date of birth
Registered
Activity