LINUX.ORG.RU
ФорумTalks

Собеседования или как определить плохого программиста

 , ,


1

4

За последнюю неделю провёл порядка 20 технических собеседований, кого ищу:

  • python с flask или django
  • js
  • tdd, cd

Было бы плюсом:

  • опыт работы в финансовой сфере
  • java с spring
  • js с react или angular
  • clojure
  • ansible, docker, kubernetes, consul

И смог вывести для себя два главных сигнала, что человек аутист:

  • хейтит js
  • использует vim/emacs и зачем-то активно говорит про это на собеседовании
  • не умеют и не хотят уметь sql

Обычно такие люди злятся, когда на что-то не могут ответить или из них приходиться вытягивать ответы.

А как лорчатки отсеивают интересных личностей?



Последнее исправление: holuiitipun (всего исправлений: 4)
Ответ на: комментарий от tailgunner

Хотя... это не подозрения, это уверенность: работодатель - лошара.

Почему это, разве не лучше чтобы человек работал в том, что ему удобней?
Ну понятно что контроль версии должен быть один на всю команду, но остальное разве не без разницы?

torvn77 ★★★★★
()
Ответ на: комментарий от torvn77

Почему это, разве не лучше чтобы человек работал в том, что ему удобней?

Помимо личного удобства, человек должен делать свою работу. И если он пишет в nano на проекте из хотя бы 10Kстрок, он ее не делает. Если тратит часы на делание IDE из Emacs или vim - тоже.

tailgunner ★★★★★
()

хейтит js

Не, ну js говно адовое. В остальном верно.

ranka-lee
()
Ответ на: комментарий от tailgunner

И если он пишет в nano на проекте из хотя бы 10Kстрок

Строки компилируюся?
Бинарник выполняется?
Товарищи по команде код понимают?
Если Да-Да-Даааа! то вы неадекват.

torvn77 ★★★★★
()

хейтит js

Это пример адекватности, между прочим.

Meyer ★★★★★
()

хейтит js

Перепись ниасиляторов js'а. Любопытно почитать.

outtaspace ★★★
()
Ответ на: комментарий от leave

Айпишник говорит, что ты лжешь

Подозреваю, что вся история с собеседованием была выдумана. Но использовать модераторские возможности для разоблачений, как-то не спортивно.

ashot ★★★★
()
Ответ на: комментарий от l0k9j8

который будет делать select из базы

Чаще просто дергать другой сервис.

d3js

Там свой react компонент для графиков есть.

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

На самом деле эти штуки не такие уж простые.

holuiitipun
() автор топика
Ответ на: комментарий от tailgunner

А у меня вызывает подозрения работодатель, которому это пофиг.

Всем даётся лицензия на идею)

holuiitipun
() автор топика
Ответ на: комментарий от leave

Ход твоих мыслей в целом не понятен. Вроде как типичному программисту консул не нужен, а какие-то сетевые нюансы будто нужны «обычным» программистам или админам. В IT все очень тесно связано, поэтому и ищут инженеров, и не надо удивляться, а нафига погромисту кубернетес. И это, без знаний нюансов, до уровня «имею представление» это осваивается за несколько дней.

staseg ★★★★★
()
Ответ на: комментарий от holuiitipun

Вот тебя бы не взял)

Я б с тобою и работать не стал )

Xintrea ★★★★★
()

python с flask или django, js, опыт работы в финансовой сфере, java с spring, js с react или angular, clojure, ansible, docker, kubernetes, consul

да ты сам аутист с такими разношёрстными и пртиворечивыми требованиями

q11q11 ★★★★★
()
Ответ на: комментарий от gh0stwizard

MediaDevices

Чатрулет и скайп без плагинов сделать.

downlinkMax

Оптимизировать загрузку для всяких жопорезов (убиват за вхардкоженные таймауты в некоторых SPA!) не в ущерб гигабиткам. Чтоб бенчмарк не делать каждый раз. По-хорошему, такие вещи в HTTP-заголовках передаваться должны, как и разрешение, устройства ввода, мощность и т. д., но имеем, что имеем; с т. з. безопасности оно даже лучше, пожалуй.

contra_sperm_spero
()
Ответ на: комментарий от q11q11

да ты сам аутист с такими разношёрстными и пртиворечивыми требованиями

Пункты из второго списка не обязательные.

holuiitipun
() автор топика
Ответ на: комментарий от contra_sperm_spero

По-хорошему, такие вещи в HTTP-заголовках передаваться должны, как и разрешение, устройства ввода, мощность и т. д

ловите наркомана!

leave ★★★★★
()
Ответ на: комментарий от staseg

Сначала оно колупается на стейджинге (хорошо, если не на локалхосте), потом пилит исходя из своих представлений о прекрасном конфиги, пишет под себя регламенты развертывания на продакшене, а потом админ обнаруживает, что у этого проект виртуалэнв в левом каталоге, и внезапно требуется установка расширения к постгресу (а на папет для забили болт). Потому что связь между разработкой и продом потеряна нахрен.

Поэтому разработчик может, конечно, знать, что такое кубернетес, но ни в коем случае не должен им на работе пользоваться - будут проблемы, я гарантирую это.

leave ★★★★★
()
Ответ на: комментарий от leave

Сначала оно колупается на стейджинге (хорошо, если не на локалхосте), потом пилит исходя из своих представлений о прекрасном конфиги, пишет под себя регламенты развертывания на продакшене, а потом админ обнаруживает, что у этого проект виртуалэнв в левом каталоге, и внезапно требуется установка расширения к постгресу (а на папет для забили болт). Потому что связь между разработкой и продом потеряна нахрен.

ansible, docker, kubernetes, consul

:)

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

Придя в команду, грамотно использующую любые технологии, и не важно висит на них клеймо «кодерская» или «админская», грамотный инженер научится их применять. Ну ясен пень, что в команде (или компании – не суть) есть люди, специализирующиеся в чем-то, это не отменяет общий технический кругозор и гибкость.

Поэтому разработчик может, конечно, знать, что такое кубернетес, но ни в коем случае не должен им на работе пользоваться - будут проблемы, я гарантирую это.

Очередное про типичного кодера. Вот тебе пример из жизни: у нас используется, кубернетес, нам не хватает в нем одной фичи, как я, не зная вообще чо это такое, пропатчу его? Миллион долларов и год на разработку?

staseg ★★★★★
()
Ответ на: комментарий от HeipaVai1o

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

peregrine ★★★★★
()
Последнее исправление: peregrine (всего исправлений: 1)
Ответ на: комментарий от peregrine

Уведомляю: инструкций по настройке Eclipse для работы с Linux kernel довольно много. Насчет Gimp не знаю, но на MDN есть инструкция по настройке Eclipse для работы с Firefox - подойдёт?

Так что крупные проекты давно уже пилят в IDE, просто ты об этом не знал.

tailgunner ★★★★★
()
Последнее исправление: tailgunner (всего исправлений: 1)
Ответ на: комментарий от peregrine

Накой ansible нужен программисту?

Вы из эры с огромными монолитами, когда ещё не придумали мелкие сервисы?)

holuiitipun
() автор топика
Ответ на: комментарий от peregrine

Не всегда IDE нужно.

Eclipse вообще говно

Потрясающая глубина анализа.

tailgunner ★★★★★
()
Ответ на: комментарий от leave

Что плохого в том, чтобы сервер мог сразу подготавливать страницу для оптимального отображения на устройстве пользователя, а не определял характеристики через костыли уже на нём? Сие сводится либо к скрипту-лоадеру, который динамически грузит компоненты SPA, превращая его без жабоскрипта в белопростынную тыкву, либо к загрузке лишнего содержимого (килобайтов неиспользуемых @media-правил, например).

contra_sperm_spero
()
Ответ на: комментарий от tailgunner

Ничего удивительного. С ростом проекта растёт и спектр задач; для решения многих из них достаточно низкоквалифицированной рабочей силы, которая умеет только мышкой по менюшкам в IDE тыкать. Жирнолиса это особенно касается, движок и прочий лоулевел там составляют не превалирующую толику — много и анскильной скриптоты, а то и вовсе гуманитарщины типа вёрстки нового интерфейса настроек. А вообще, об используемых инструментах куда красноречивее говорит игнор-файл VCS, например.

contra_sperm_spero
()
Ответ на: комментарий от contra_sperm_spero

много и анскильной скриптоты, а то и вовсе гуманитарщины типа вёрстки нового интерфейса настроек

Рободэнсер, ты тупой норкоман. Какая скриптота, какая верстка в CDT. Тем более если речь о ядре.

tailgunner ★★★★★
()

Обожаю собеседования, а в особенности тот факт, что одна компания берет на работу долгожданного ТОГО САМОГО программиста, которого забраковали в остальных компания.
А злятся они потому, что все эти задачи они непременно решат, т.к. это обязательная часть профессии, но формат диалога позволяет заключить обратное.
Автор треда желает находить плохих программистов, и он будет их находить, причем постоянно, пока кто-то рандомным образом не впишется в его правильные ответы, а потом кричать на все стороны что хороших программистов очень мало, но кого же ты искал?

JN
()
Ответ на: комментарий от holuiitipun

У нас с Ansible специально обученный сисадмин есть. Девелоперу не надо настраивать кучу компов.

peregrine ★★★★★
()
Ответ на: комментарий от contra_sperm_spero

Не, фронтэндщики все-таки совсем странные люди. Оставьте http в покое, пожалуйста. Вы уже порядком нагадили со спиди и хттп2.

leave ★★★★★
()
Ответ на: комментарий от leave

Не, фронтэндщики все-таки совсем странные люди. Оставьте http в покое, пожалуйста. Вы уже порядком нагадили со спиди и хттп2.

Причём здесь фронтендщики? Кто-то заставляет использовать хттп2?

holuiitipun
() автор топика
Ответ на: комментарий от holuiitipun

Да, гугль с мозилой потихоньку двигают массовое сознание в этом направлении.

leave ★★★★★
()

tdd

Вот скажи, какая лично тебе разница, когда человек пишет тесты, если он их пишет, сами тесты адекватные и код рабочий и выполняет требования?

python с flask
java с spring
js с react
clojure

Нужен то ли человек-оркестр, то ли школьник, который только и делает, что учит новые для себя языки и фреймворки.

два главных сигнала
далее - список из трех пунктов

хейтит js

Есть огромное множество хейтить js, как чисто технических, так и идеологических. Так что если человек хейтит js, но при этом умеет им пользоваться и осознает, что во многих случаях других вариантов особо и нет - он, скорее, адекват.

unikoid ★★★
()
Ответ на: комментарий от unikoid

Бинарность. Протокол не приносит _абсолютно_ никаких улучшений, и вместе с тем усложняет жизнь разработчикам и админам.

leave ★★★★★
()
Ответ на: комментарий от leave

То есть, по-твоему, полностью асинхронный протокол без HOL problem и server push - это «_абсолютно_ никаких улучшений»? Хотя, соглашусь с тем, что это никак не связано с бинарностью. Но с другой стороны, сейчас в основном все сжимается, то есть так или иначе становится бинарным. Тем более, что HTTP/2 предлагает сжатие заголовков.

unikoid ★★★
()
Последнее исправление: unikoid (всего исправлений: 1)
Ответ на: комментарий от holuiitipun

Хм, поясни же тогда TDD в твоем понимании.
Везде, где читал про TDD, говорилось, что сначала тесты, которые априори не проходят, потом код, реализующий фичу, потом прогоняем тесты, если не прошли - идем дописывать/править код. Меня обманули?

unikoid ★★★
()
Ответ на: комментарий от unikoid

Сервер пуш есть уже черт-те сколько лет (тот же комет). Конкретно в контексте http2 вся вот это вот асинхронность и мультиплексирование (вместе со сжатием заголовком) дают хоть сколько-то заметный эффект только в случае совсем днищенских каналов (а-ля спутниковые), процентная доля которых исчезающе мала. Более того, в случае стабильных толстых каналов мы наблюдаем в продакшене даже падение производительности на 1..5%.

Но с другой стороны, сейчас в основном все сжимается, то есть так или иначе становится бинарным.

Ну давай, изобрази мне работу с http2 телнетом. Цимес в том, что сейчас я могу отключить сжатие для дебага, и в выхлопе tcpdump видеть плейнтекст. Гугл меня этой возможности пытается лишить ради каких-то своих непонятных целей.

leave ★★★★★
()
Последнее исправление: leave (всего исправлений: 1)
Ответ на: комментарий от leave

тот же комет

... не более, чем модный в прошлом баззворд.
На деле, это был либо обычный поллинг (много мелких запросов, большинство из которых - холостые, крайне неэффективно), либо лонг-поллинг (запрос уходит и висит, либо пока не умрет по таймауту, либо пока не появится какой-то ответ; в сочетании с вышеупомянутой проблемой HOL blocking выглядит просто великолепно), либо, в настоящий момент - вебсокеты. Которых могло и не быть, если бы server push появился сразу.
Хотя, я сейчас посмотрел, как этот server push реализован на стороне клиента, как всегда странный костыль, имхо.

асинхронность и мультиплексирование
эффект только в случае совсем днищенских каналов

По-моему, дело тут не только (а может и не столько) в каналах. Проблема в том, что сейчас клиент не имеет возможности пульнуть несколько запросов одновременно через одно соединение, ему приходится отправлять запрос -> ждать ответ -> отправлять запрос -> ждать ответ. Частично эту проблему пытались решить в рамках HTTP 1.1 pipelining, но он, во-первых, выдался таким удачным, что в FF отключен по дефолту, а из хрома вообще выброшен, а во-вторых, не избавляет от той ситуации, когда один долго обрабатывающийся на сервере запрос (вовсе не по причине медленного канала) заставляет все остальные ждать своей очереди, несмотря на то, что ответы по ним уже давно готовы.

в выхлопе tcpdump видеть плейнтекст

Ну есть wireshark. Да, я понимаю, что это усложнение, не всегда оправданное. С другой стороны, HTTPS ты тоже особо tcpdump'ом не посмотришь и телнетом не походишь.

unikoid ★★★
()
Ответ на: комментарий от leave

Более того, в случае стабильных толстых каналов мы наблюдаем в продакшене даже падение производительности на 1..5%.

Это данные из личного опыта? Вы реально используете http/2 в проде? А зачем, если он, с твоих слов, не дает «_абсолютно_ никаких улучшений»?
На самом деле, звучит странно. Я не разбирал спеку http/2, но мне всегда казалось, что грамотный бинарный протокол априори обрабатывается быстрее текстового. Возможно, проблема в сыром, пока еще, софте.

unikoid ★★★
()
Последнее исправление: unikoid (всего исправлений: 1)
Ответ на: комментарий от tailgunner

Какая скриптота, какая верстка в CDT

Ну не запускать же стопицот сборочек клипсы. Даже одна иную машину способна до ручки довести. Жабософт на десктопе и так извращение, а писать на сях в жабоподелии — извращение в кубе.

contra_sperm_spero
()
Ответ на: комментарий от leave

Оставьте http в покое, пожалуйста

Будто и без того мало кастомных заголовков в него пихают.

Вы уже порядком нагадили со спиди и хттп2

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

contra_sperm_spero
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.