Pull to refresh
15
0
Imenem @Imenem

User

Send message

Лонгрид по полезному чтению в 2023 году: 39 книг, которые помогут писать красивый <код>

Reading time 17 min
Views 29K
image

≀И эта статья ответит на вопрос, зачем вообще читать книги в 2023 году при великом разнообразии онлайн-курсов.

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

Каждое издание из подборки расширяет знания по целому ряду тем, связанных с разработкой.

Для вашего удобства добавил рейтинг, ссылки на переводы и картинки для тех, кто просто добавляет статью в закладки, не читая. Enjoy на новогодних праздниках или прямо сейчас.
Читать дальше →
Total votes 33: ↑30 and ↓3 +27
Comments 12

Как проходить архитектурные секции

Reading time 6 min
Views 13K

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

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

Читать далее
Total votes 12: ↑10 and ↓2 +8
Comments 8

Как стать хорошим техлидом

Reading time 10 min
Views 31K

В 2006 году Яндекс и Google приехали в Петербург в Borland, который сокращал команду. Обе компании одновременно открывали в Петербурге свои офисы на его базе. Тогда к нам пришли замечательные ребята. Мы много общались, но больше всего запомнились слова Толи Орлова. Он сказал, что рост Яндекса на тот момент ограничивает только количество лидов, которые бы могли развивать продукты. Что роли техлида и тимлида очень существенны, и часто рост компании зависит только от наличия сильных лидеров. Тогда мне и захотелось узнать, как им стать.

Меня зовут Владимир Горовой. Я был тимлидом, потом перешёл в менеджмент, руководил созданием разных сервисов, в том числе, Яндекс.Путешествий. Сейчас работаю в Яндекс.Вертикалях. У меня есть разный опыт: менеджерский, разработческий и тимлидский. Всем этим и хочу с вами поделиться.

Читать далее
Total votes 53: ↑50 and ↓3 +47
Comments 39

Попарное тестирование: суть техники, инструменты и примеры

Level of difficulty Easy
Reading time 5 min
Views 123K

Что такое попарное тестирование и почему оно является эффективной техникой тест-дизайна? Поговорим об этом ниже. Статья предназначена для начинающих специалистов по тестированию.

Читать далее
Total votes 4: ↑3 and ↓1 +2
Comments 0

Как мы избавились от 80% своего кода, повысив скорость разработки и уменьшив количество ошибок

Reading time 12 min
Views 63K


Оптимизация кода и развитие микросервисной архитектуры занимает значительную часть жизни команды разработчиков МВидео-Эльдорадо. Тем любопытней изучить опыт коллег за рубежом. Предлагаем вашему вниманию очередной пост на тему: «А как там у них».
Читать дальше →
Total votes 98: ↑90 and ↓8 +82
Comments 101

План подготовки к собеседованию на позицию Java разработчика

Reading time 5 min
Views 62K
Каждый раз, готовясь к собеседованиям на позицию «Java разработчик», я понимаю, что мне бы очень помог конкретный план подготовки. Поэтому все свои записи, накопившиеся в ходе прохождения собеседований, было решено структурировать и опубликовать. Надеюсь, кому-то этот план будет полезен.

И я намеренно не пишу, для кого предназначен этот план подготовки: для senior, middle или junior разработчика — все зависит от конкретной вакансии и от требований работодателя. Поэтому опирайтесь на этот план, но фильтруйте и в то же время не воспринимайте его как исчерпывающее руководство.

  1. Java core. Здесь можно ориентироваться например на книгу «OCP: Oracle Certified Professional Java SE 8 Programmer II Study Guide: Exam 1Z0-809» для подготовки к Java сертификации уровня Professional. Есть подобная книга «OCA: Oracle Certified Associate Java SE 8 Programmer I Study Guide: Exam 1Z0-808» для уровня Associate — на нее тоже можно взглянуть. Пройдитесь по оглавлению и выделите для себя, что можно повторить. Конечно же, не стоит пускаться во все тяжкие и читать книгу от корки до корки — многие темы из этой книги можно обойти стороной, например форматирование дат. Выделите самое основное. Например для меня это были следующие темы: коллекции (стандартные вопросы «Как устроена HashMap?» или «Чем отличается LinkedList от ArrayList?» все также часто задают на собеседованиях), дженерики, функциональные интерфейсы, многопоточность (тут тоже фильтруйте — не нужны вам cyclic barrier и fork join framework).
    Также не забывайте проецировать знания на свой опыт. Например, когда вам приходилось использовать многопоточное программирование? Какие проблемы вы решали? Какие блокировки использовали?
  2. Многопоточность.
Читать дальше →
Total votes 32: ↑30 and ↓2 +28
Comments 16

Как проджект-менеджеры рулят проектами: руководство для джунов

Reading time 7 min
Views 16K

Привет, Хабр! Меня зовут Вадим Кузенков, я руковожу проектным офисом и работаю с командами в компании KODE. За плечами — 18 лет опыта в управлении проектами.

Весной мы проводили первую стажировку по проджект-менеджменту. На первой лекции я рассказывал, что такое проект для настоящего PM и какие методологии нужно использовать, чтобы уверенно им управлять. Решил поделиться материалом с вами. 

Чем он может быть полезен? Вы сможете проверить свою осознанность, начать строить мост над пропастью между теорией и практикой, возможно — избавиться от стереотипов. Материал прежде всего ориентирован на джунов в PM, но будет полезен и другим IT-специалистам. Развеем миф, что попугая можно повысить до PM, если научить его говорить «Ну что там?»

Читать далее
Total votes 7: ↑6 and ↓1 +5
Comments 26

Собеседование наоборот: вопросы соискателя к компании

Reading time 6 min
Views 75K
Всем привет! Хочу очередной раз поднять тему про найм. Только я собираюсь поговорить об этом с точки зрения кандидата, а не работодателя. Ведь собеседование, вопреки многим стереотипам, процесс двусторонний — вопросы может задавать не только интервьюер, но и сам соискатель. За прошлый год я провёл порядочное количество собеседований, и абсолютное большинство кандидатов огорчило меня отсутствием вопросов о компании, всего 5 человек стали меня расспрашивать о работе.

Я же считаю, что вопросы на собеседовании должен задавать и сам кандидат, ведь ему предстоит там работать. Из стандартного описания вакансии невозможно понять, что творится в компании, да и на собеседовании принято всё немного приукрашивать. Я думаю, что соискатель должен максимально использовать собеседование для того, чтобы выяснить реальное положение дел в компании. Мало кому захочется попасть в некомфортные условия или в убыточную компанию без перспектив. Если интересно, как во время собеседования получить реальное представление о компании, то добро пожаловать под кат. Я дам список вопросов, которые обычно не ждут интервьюеры, возможно кому-то они помогут принять правильное решение при поиске работы.

image
Читать дальше →
Total votes 137: ↑131 and ↓6 +125
Comments 130

Топ-10 книг для разработчика

Reading time 6 min
Views 131K

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




Привет, хабр! Продолжаю делиться полезными подборками. Совсем недавно я опубликовал 2 поста с перечнем Github репозиториев: Часть1 и Часть2. На этот раз предлагаю вашему вниманию подборку полезных книг для разработчиков. Кому интересно — добро пожаловать под кат.
Читать дальше →
Total votes 30: ↑26 and ↓4 +22
Comments 40

Тестирование на примере ReactJS: насколько глубока кроличья нора

Reading time 14 min
Views 24K
Всем привет, меня зовут Ярослав Астафьев, и сегодня я хотел бы провести обзорную экскурсию в тестирование ReactJS. Я не буду углубляться в сложности тестирования веб приложений с использованием определенных библиотек (руководствуясь подходом «сложно тестировать только плохой код»), взамен постараюсь разнообразить ваш кругозор. Так что в этой статье React — скорее повод собрать воедино подходы к тестированию, отправная точка, объединяющая хипстеров и технологии. Корректнее будет даже сказать, что речь пойдет о принципах тестирования вообще с иллюстрациями на ReactJS (и не только).

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



Если введение не вызвало приступ синестезии — добро пожаловать под кат.
Читать дальше →
Total votes 23: ↑23 and ↓0 +23
Comments 0

За пять дней я прошел собеседования в пяти компаниях Силиконовой долины и получил пять предложений о работе

Reading time 12 min
Views 118K
За пять дней, с 24 по 28 июля 2017 года, я прошел собеседования в LinkedIn, Salesforce Einstein, Google, Airbnb и Facebook; все пять компаний предложили мне работу. Это был замечательный опыт и я понимаю, как мне повезло, что мои усилия оправдали себя, поэтому решил написать об этом. Здесь я расскажу о том, как готовился к собеседованиям, как они проходили и какое впечатление произвели на меня компании.



Как все началось


Я отработал в Groupon почти три года. Это моя первая работа, там были и прекрасные люди, и отличные проекты. Мы делали всякие интересные штуки, вводили перемены внутри компании, публиковали материалы и все в таком духе. Но со временем я стал ощущать, что темп моего самообразования стал затухать (попросту говоря, замедляться), мне не хватало пищи для ума. К тому же, как и всякого разработчика ПО из Чикаго, меня тянуло в Область залива Сан-Франциско — ведь там столько известных компаний.

Жизнь коротка, а профессиональная жизнь еще короче. Обговорив все с женой и заручившись ее полной поддержкой, я решил сделать решительный шаг и в первый раз в жизни поменять работу.
Читать дальше →
Total votes 95: ↑88 and ↓7 +81
Comments 98

40 ключевых концепций информационных технологий доступно и понятно

Reading time 16 min
Views 159K
Представляю вашему вниманию перевод очень ёмкой, и в то же время достаточно краткой (для такого масштаба проблемы) статьи Карла Чео. Я решил, что очень хочу сделать её перевод практически сразу, как только начал читать, и очень рад, что в итоге сделал это.
Для того, чтобы сделать обучение более веселым и интересным, представляю вам перечень важных теорий и концепций информатики, объяснённых с помощью аналогий с минимальным количеством технических деталей. Это будет похоже на очень быстрый курс информатики для всех с целью просто дать вам общее представление об основных концепциях.

Важные замечания:
  • Пункты с неуказанным источником написаны мной самостоятельно. Поправьте меня, если вы заметите какие-то неточности. Предложите лучшую аналогию, если это возможно.
  • Заголовки ссылаются на соответствующие им статьи в Wikipedia. Пожалуйста, читайте эти статьи для более серьезных и детальных объяснений.
  • Аналогии — отличный способ объяснить материал, но они не идеальны. Если вы хотите по-настоящему понять перечисленные концепции, вам следует начать с фундаментальных азов и рассуждать, исходя из них.

Также зацените эту инфографику (вариант на русском), если вы просто начинающий программист.
Читать дальше →
Total votes 104: ↑96 and ↓8 +88
Comments 37

19 советов по повседневной работе с Git

Reading time 14 min
Views 284K


Если вы регулярно используете Git, то вам могут быть полезны практические советы из этой статьи. Если вы в этом пока новичок, то для начала вам лучше ознакомиться с Git Cheat Sheet. Скажем так, данная статья предназначена для тех, у кого есть опыт использования Git от трёх месяцев. Осторожно: траффик, большие картинки!

Содержание:
  1. Параметры для удобного просмотра лога
  2. Вывод актуальных изменений в файл
  3. Просмотр изменений в определённых строках файла
  4. Просмотр ещё не влитых в родительскую ветку изменений
  5. Извлечение файла из другой ветки
  6. Пара слов о ребейзе
  7. Сохранение структуры ветки после локального мержа
  8. Исправление последнего коммита вместо создания нового
  9. Три состояния в Git и переключение между ними
  10. Мягкая отмена коммитов
  11. Просмотр диффов для всего проекта (а не по одному файлу за раз) с помощью сторонних инструментов
  12. Игнорирование пробелов
  13. Добавление определённых изменений из файла
  14. Поиск и удаление старых веток
  15. Откладывание изменений определённых файлов
  16. Хорошие примечания к коммиту
  17. Автодополнения команд Git
  18. Создание алиасов для часто используемых команд
  19. Быстрый поиск плохого коммита

Читать дальше →
Total votes 152: ↑149 and ↓3 +146
Comments 62

IconBIT NetTAB MATRIX: обзор и тест доступного планшета с IPS экраном

Reading time 11 min
Views 49K


Все больше и больше компаний стремительно врываются на рынок планшетов. В ценовом диапазоне до 10 тыс. руб. появилось настолько много разных моделей планшетов, что производителям стало очень сложно выделяться на этом фоне – компании стали пытаться максимально снизить стоимость производства с сохранением нормального юзабилити. Так появились планшеты с ценой всего в 100$, но с посредственным железом. Компания IconBIT решила пойти другим путем – она не пыталась подобрать максимально дешевые запчасти, а оставила в планшете качественную IPS матрицу с диагональю 7 дюймов и неплохое железо способное воспроизводить Full HD видео. Так появился планшет NetTAB Matrix, цена которого от 6590 руб.

А что на практике? Подробный обзор устройства — под катом.
Читать дальше →
Total votes 62: ↑56 and ↓6 +50
Comments 68

Mi-one новый смартфон Xiaomi

Reading time 2 min
Views 21K

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

Не буду слишком углубляться в историю и скажу лишь, что MIUI начиналась, как обычная кастомная прошивка для Android с не совсем обычным интерфейсом. Разрабатывают её ребята из Китая. При этом измененный интерфейс Андроида в этой прошивке, мягко говоря, напоминает интерфейс небезызвестного телефона на «i».

Так вот, эти самые ребята решили, что прошивка прошивкой, но телефон лучше и, назвавшись Xiaomi, выпустили телефон. Аппарат называется MI-One и имеет весьма неплохие характеристики, позволяющие отнести его к флагманам рынка Android смартфонов.

А чем же он удивителен, узнаем под катом
Total votes 73: ↑64 and ↓9 +55
Comments 172

Обзор курьерских служб для интернет-магазина — 2

Reading time 3 min
Views 33K
Несколько месяцев назад я провел небольшое исследование, в котором сравнивал разные курьерские службы (КС), которые предлагают различные услуги для интернет магазинов. По прошествии нескольких месяцев я решил посмотреть как изменилась ситуация, появились ли новые игроки на рынке, не изменились ли цены.

Для написания первой статьи я посещал сайты компаний и собирал информацию оттуда. В этот раз я решил пойти другим путем и дать самим компаниям возможность рассказать о себе. К сожалению, попытка провалилась — ответило только 4 компании из 15. Честь им и хвала — Навигатор-Курьер, Аксиомус, О-Курьер, ЮниЭкспресс .
Читать дальше →
Total votes 72: ↑58 and ↓14 +44
Comments 37

Веб-патология: Нет кнопки для нажимания

Reading time 3 min
Views 2.4K
Капитан Очевидность опять будет смеяться, но факты таковы: у доброй половины обратившихся ко мне за консультацией с проблемой “Плохие продажи” — на сайте возле описания товара отсутствовала цена и кнопка [Купить]! При этом создатели сайта не вызывали никаких сомнений в умственной полноценности, наоборот, уровень их сайтов был гораздо выше среднего. Этому есть вполне разумное объяснение и лежит оно опять же в области UX дизайна и моделирования опыта пользователей.
Читать дальше →
Total votes 70: ↑67 and ↓3 +64
Comments 71

Обзор российских интернет-лейблов

Reading time 4 min
Views 34K
Интернет-лейбл — это сетевой аналог оффлайнового музыкального издательства. Если изначально традиционные рекорд-лейблы занимаются дистрибуцией музыкального контента, раскруткой коллективов и исполнителей в реальном мире, то интернет-лейблы ведут ту же работу в сети. В связи с тяжелым положением традиционной музыкальной индустрии, когда даже титаны музыкального бизнеса вынуждены сильно рисковать при выпуске новых релизов, в последнее время рекорд-лейблы стараются работать с коллективами, которые наверняка отработают вложенные средства. В культурном плане эта ситуация достаточно плачевна — ведь сейчас даже не совсем андерграундные коллективы не могут надеяться на издание, и в прокат идут только стопроцентно успешные коммерческие проекты.

Как известно, причиной тому интернет — и он же предлагает новые пути распространения музыки. Уже с начала нулевых в Америке и Европе появляются новые схемы — когда релизы не выпускаются на CD, а публикуются только виртуально, и группы и исполнители раскручиваются через интернет. Скопировав подход традиционных-рекорд лейблов и перенеся его в сеть, появились так называемые net-labels или, по-русски, интернет-лейблы, или сетевые лейблы, или mp3-лейблы.

Что же такое вообще рекорд-лейбл? Во-первых, это организация, которая занимается распространением не любой музыки, а какого-то определенного формата или даже узкого специфического направления. Есть продюсер, или несколько, которые занимаются отбором музыки, и хороший лейбл обязательно имеет свое лицо и звук. Некоторые релизы слушают только потому что их издал лейбл 4AD, к примеру. Во-вторых, лейбл занимается защитой авторских прав. В случае с интернет лейблами защита авторских прав ограничивается только публикацией контента под свободной лицензией, но отбор музыки может быть довольно серьезным. Лейблу выгодно, чтобы люди слушали именно его музыку, он занимается промоушеном — может устраивать концерты, распространяет информацию о релизах в сети, и так далее и тому подобное.

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

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

Еще пара слов и 7 российских интернет-лейблов, заслуживающих вашего внимания.
Total votes 44: ↑40 and ↓4 +36
Comments 48

Курьерские службы с кассовым обслуживанием

Reading time 3 min
Views 20K
Приветствую.

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

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

В этой статье мы рассмотрим плюсы и минусы курьерских служб, а также пробежимся по их тарифам и условиям работы.

И что же в итоге мы видим...
Total votes 40: ↑39 and ↓1 +38
Comments 65

Оптимизируем загрузку библиотеки ExtJS до двух запросов

Reading time 3 min
Views 1K
Я хочу поделиться решением, которое я использую для оптимизации загрузки админки, разработанной с использованием библиотеки ExtJS. Это решение применимо не только непосредственно к ExtJS, но для данной библиотеки, это очень актуально. Заранее предупреждаю, что решение очень плохо, если почти никак, работает с семейством 60- и 70-летних интернет стариков-эксплореров.

Проблема:


Почти первое, что сразу отпугивает большинство разработчиков и заказчиков, перед тем как приступить к разработке на extjs — «блин, да это же почти мегабайт жаваскрипта!?!». По сути так оно и есть, а если включить в список для загрузки файлы css стилей и картинки, то можно получить и все полтора-два. Приправим блюдо плагинами, что неизбежно, ведь в этом и есть плюс extjs — мощные плагины, то на закуску прилагается много скриптиков, каждый требующий запрос к серверу.

В итоге, каждый заход на страницу админки требует, что-бы клиент (получил бесплатные четки) загрузил все скрипты и скриптики и оформление. Это, плачевно влияет на скорость подьема страницы в браузере. А от пользователя требует дополнительного терпения, что никак не добавляет плюсов в карму разработчика.

Если вы подумали, что я опишу способ загрузки скриптов «по требованию», который существует и для ExtJS, то нет. Мое решение хоть и грубое, но дает получить все и сразу, хоть и накладывает определенные ограничения.
Итак…
Читать дальше →
Total votes 5: ↑3 and ↓2 +1
Comments 9

Information

Rating
Does not participate
Location
Украина
Date of birth
Registered
Activity