робота

робота

Про роботу

Отпуск за свой счёт

Интересно как работает логика отпусков в наёмной работе. Большинство людей из моего окружения принмают лимиты, навязанные нанимателями. Если тебе выдали 20 дней — вот эти 20 дней и планируются, не больше. Очень нечасто я слышу чтобы люди превышали установленные лимиты, наоборот, почти всегда отпуск "экономят" и стараются уместить между праздниками, таким образом пополняя толпы одинаково мыслящих туристов. Вместо того, чтобы отдыхать в те дни, когда...

Рабочая почта

Когда я работал в большом энтерпрайзе, то основным средством коммуникации у нас была электронная почта. У меня в аутлуке были настроены десятки папочек, специальные фильтры и метки. Администраторы создавали группы по интересам, у всех были красивые корпоративные подписи, "Доброго времени суток коллеги" и так далее. В день могло приходить по пятдесят-сто писем и все они аккуратно разгребались и складывались. Особенно мне нравилась древовидное преставление...

Code retreat

Пару недель назад ребята из Databand организовали активность под названием Code Retreat. Я впервые принимал участие в такой движухе. Code retreat — это нечто вроде хакатона. Суть такова: разработчики не занимаются рабочими задачами, вместо этого практикуя программирование в чистом виде. Как это проходило: была выбрана задача—игра "Жизнь" [https://en.wikipedia.org/wiki/The_Game_of_Life] и мы программировали её разными способами: вначале как...

Performance-first

В дискусії про телеграм клієнти [https://www.rozhkov.me/why-comment-commits/] підняли важливе питання: як вийшло, що Slack пише ціла команда по найкращим практикам і в них виходить глючне гальмівне лайно, а Телеграм зроблений однією людиною і чудово працює? (мається наувазі "один телеграм клієнт—один розробник [https://github.com/DrKLO/Telegram/pull/76#issuecomment-36391939]") Чи вірно те що Телеграм робить геніальний програміст, тому він значно...

Навіщо потрібні коментарі до комітів?

Де-факто стандарт в індустрії вимагає писати коментарі до кожного коміту. Часто ще потрібно також вказувати номер тікету, в рамках якого був зроблений цей коміт. В попередньому пості [https://www.rozhkov.me/why-you-need-to-move-tasks-in-jira/] ми обговорили чому потрібно дотримуватися внутрішніх порядків компанії (tl;dr: бо інакше ви станете проблемою та вас позбудуться), але мотивація робити це чисто KPI-на — якщо вас оцінюють за критерієм «пересування тасок», то логічно цей...

Зачем двигать таски в джире

На днях увидел заметку от Ильи Климова [https://mobile.twitter.com/xanf_ua/status/1436610074680700933] как он уволил джунов за то что те "не двигали таски в джире". В камментах оказалось что многие не понимают, почему двигать таски это важно. В своё время когда у меня была своя команда то я тоже требовал, чтобы люди двигали таски. Это нужно было в первую очередь мне—...

Чистый код

Недавно попал на обсуждаение [https://news.ycombinator.com/item?id=27276706] критики [https://qntm.org/clean] книги "Чистый код". Книга известная, у меня даже в каких-то списках "на прочитать" довольно долго висела, а тут оказывается что уже и читать ничего не надо. На своих проектах я использую RuboCop [https://rubocop.org/], это линтер-форматтер-статический анализатор кода для Ruby. Вот на днях писал метод...

Бум зарплат

Заметил что в последнее время заметно вырос объем обсуждений зарплат разработчиков в моём инфопузыре. В чате канала, на форумах, в твиттере, что не день то обсуждение денег-денег-денег. Козуля официально меняет свой курс [https://twitter.com/vkozulya/status/1441005370420379650]. Анонимные разработчики хвастаются как они вышли на 20к [https://dou.ua/lenta/interviews/developer-career-20k/]. Реакт разработчик с тремя годами опыта уделывает 5к джава-деда закрыв грудью вакансию на 8к....

Оверинжиниринг на пустом месте. DynamoDB, Kinesis, Spark, бигдата.

Ранее я рассказывал [https://www.rozhkov.me/startup-swamp/] про то как можно бросить стартап в болото, занявшись построением совершенно ненужных архитектур. Сегодня расскажу и еще одном таком безумстве. У нас была задача — рассылать пользователям напоминания о событиях. Человек приходил на сайт, регистрировался, выбирал временной слот. За день до события нужно было ему присылать письмо-напоминание. Вот такая простая задача. Шёл 2015 год. Что мы делаем? Ну, база...

Кассовый разрыв

В определении слова "бизнес" написано что это деятельность, целью которой является получение прибыли. Пока работаешь за зарплату, то этот факт воспринимается оторванно от реальности. Если ты заболел, плохо работал, встрял в неудачный проект, залипал, то в худшем случае босс пожурит тебя или погрозит пальчиком. Независимо от результата работы денежка все равно капнет на счет. Совсем другое дело если ты успешный кабанчик-предприниматель или молча гребешь...

Аутсорс нация

Среди разработчиков распостранено мнение, что не имеет значения на какую компанию работать: продуктовую, сервисную, аутстафф, стартап, не-ІТ. Лишь бы платили денег и желательно побольше. Согласно опросу ДОУ [https://dou.ua/lenta/articles/portrait-2020/?from=doufp], 65% разработчиков заняты в аутсорсе, остальные—в продукте и стартапах. Рискну предположить, что в "настоящем" продукте работает гораздо меньше 35%—под "настоящим" я понимаю компанию которая была...

Сложности текстовой коммуникации

Пяток лет назад я попал на серию статей Егора Бугаенко об организации работы в распределённой команде. Одной из ключевых особенностей этой системы был запрет на любые коммуникации вне гитхаб тикетов [https://www.yegor256.com/2014/04/17/how-xdsd-is-different.html#no-informal-communications] . Проблема потерянных пакетов, отсутствия документации и незафиксированных договорённостей мне очень знакома. Позже эту же идею, поощрение структурированного текстового общения я увидел в блогах малоизвестной...

Веб-скрапинг. Инструменты

Для скрапинга можно использовать всё что угодно. Вам нужно лишь сделать запрос, получить содержимое и дальше его разобрать. Теоретически, скрапинг можно делать на bash + какой-то программой для работы с xml. Библиотеки для работы с сетью и парсинга html есть во всех языках. Можете брать любой. Однако скрапинг помимо собственно запроса и обработки включает еще кучу всяких вещей. Вам нужно ходить по ссылкам и желательно делать это...

Веб-скрапинг

Интернет—бездонный океан информации. Часто она не структурирована и требует подготовки, чтобы быть полезной. Множество продуктов строят свою бизнес-модель на сборе и обработке данных. Веб-скрапинг—это автоматизированный сбор информации с сайтов и других источников: публичных API, файлов с данными и так далее. Скрапинг нужен везде и всегда. Первый раз я столкнулся с этим в 2010, когда мы были совладельцами маленькой сети зоомагазинов и нужно было искать...

Оновлення бібліотек на проектах

"Rotting software" це серйозна проблема. Вибухове зростання індустрії генерує таке ж зростання кількості інструментів розробки та пришвидшує старіння існуючих рішень. В 2015 для розробки стартапа ми взяли мікросервіси та Spring Cloud Netflix [https://spring.io/projects/spring-cloud-netflix]. До 2017 половину з цього стеку сам Netflix перевів у maintenance режим, а деякі рішення просто задепрекейтив у себе та залишив напризволяще. Ми ще не встигли вийти...

Архитектура современных веб-приложений на примере adopt.com.ua. CMS. Мониторинг. Аналитика

Так как у меня нет тестов кроме линтеров, то нужно быть готовым быстро фиксить ошибки на проде. Для этого используются логгеры и трекеры ошибок. Логгер я не использую, так как у меня пока что нечего логировать особо. А вот для трекинга ошибок я пользуюсь отличным сервисом Sentry [https://sentry.io/]. Как он работает? Вы подключаете SDK в своё приложение, и при возникновении любой ошибки она будет...