Как стать автором
Обновить
1
0
Александр Жиличев @9thlevel

Руководитель команды разработчиков

Отправить сообщение

Пишем gRPC сервис на Go — сервис авторизации

Уровень сложностиСредний
Время на прочтение63 мин
Количество просмотров61K

Пишем gRPC сервис на Go — сервис авторизации


В этой статье мы научимся писать полноценный gRPC сервис на Go на примере сервера авторизации с полноценной архитектурой, готовой к продакшену. Мы напишем как серверную часть, так и клиентскую. В качестве клиента мы возьмём мой сервис — URL Shortener, о котором у меня также есть статья и видео-гайд на ютубе. Попутно мы познакомимся с базовыми подходами к работе с авторизацией. И в конце настроим автоматический деплой сервиса с помощью GitHub Actions на удалённый сервер.


Видео-версия этого гайда с более подробными объяснениями

Исходный код проекта: https://github.com/GolangLessons/sso


Итого, наш план:


  • Напишем простой, но полноценный gRPC-сервис
  • Разберемся с базовыми принципами работы авторизации — чтобы не было скучно
  • Настроим автоматический деплой в прод — потому что руками деплоить лень
  • Подружим его с уже готовым сервисом URL Shortener — чтобы был практический смысл
  • Напишем полноценные функциональные тесты

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


Кратко обо мне: меня зовут Николай Тузов, я много лет занимаюсь разработкой на Go, очень люблю этот язык. Также веду свой YouTube-канал.

Читать дальше →
Всего голосов 62: ↑60 и ↓2+66
Комментарии44

15 ресурсов по Git. Что почитать/посмотреть?

Уровень сложностиПростой
Время на прочтение2 мин
Количество просмотров26K

Всем привет! В этот раз собрали подборку вспомогательных материалов для изучения Git. Удобство и гибкость сделали Git стандартом для большинства современных IT-компаний. Поэтому умение работать с ним критично для любого программиста.

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

Читать далее
Всего голосов 12: ↑8 и ↓4+4
Комментарии6

Времена в английском языке

Время на прочтение7 мин
Количество просмотров47K

Пространственно-временно́й континуум обходится одним временны́м и тремя пространственными измерениями. M-теория струн расширяет физическую модель до невообразимых девяти пространственных измерений, но сохраняет время линейным.

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

Читать далее
Всего голосов 40: ↑35 и ↓5+41
Комментарии50

Как я потратил 1000 часов на изучение английского языка в 2016 году

Время на прочтение21 мин
Количество просмотров175K


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

Учась в бакалавриате, я смог развить словарный запас до 10 000 и прорвать барьер чтения художественной литературы. Но понимание разговорной речи на слух — задача куда более трудная. Я долгое время считал её нерешаемой, не верил в успех.

Эта статья — о том, как невозможное было сделано возможным, как в самом сердце магистратуры я проломил неприступную цитадель аудирования. Это бремя выпало на 2016 год. Я перепробовал множество различных учебных методик и расскажу вам о них во всех подробностях, по каким материалам я занимался и какие выводы делал. Эта статья — огромный склад опыта, и я надеюсь, что он будет вам полезен.
Читать дальше →
Всего голосов 57: ↑44 и ↓13+31
Комментарии135

Артикли в английском: безжалостная война правил и исключений

Время на прочтение21 мин
Количество просмотров71K


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

В английском языке у существительных нет ни рода, ни падежа. Чтобы жизнь мёдом не казалась, мы должны уметь правильно использовать артикли. Они помогают понять конкретное ли это существительное или нет, исчисляемое или неисчисляемое, стоит ли оно в единственном или множественном числе. Проблема в том, что они непостоянны и могут меняться в зависимости от значения и контекста. Да и наличие исключений не упрощает нам жизнь.

Нет смысла писать ещё одну статью о базовых правилах употребления артиклей в английском. Сегодня я расскажу о правилах и о способах их нарушить.
Читать дальше →
Всего голосов 34: ↑32 и ↓2+38
Комментарии69

Как самостоятельно прокачивать английский

Уровень сложностиСредний
Время на прочтение8 мин
Количество просмотров35K

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

Читать далее
Всего голосов 20: ↑17 и ↓3+15
Комментарии68

Английский, которому меня не учили

Время на прочтение14 мин
Количество просмотров76K

Или максимы Английского языка, которые бы я хотел знать 20 лет назад.

Чем отличается хороший геймер от плохого? Хороший геймер сидит и изучает игру. Он знает каждый закуток. Он может без запинки назвать все характеристики всех юнитов в Star Craft. А самый крутой игрок знает все пропускные способности желтых, красных и синих конвейеров. А плохой игрок использует чит-коды или assistant apps. 

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

Я не раз в своей жизни слышал, что Английский чрезвычайно сложен. Подобные заявления фактически являются чит-кодом. Вы просто сдаётесь и перестаёте пытаться. А зря. В английском языке есть очень много полезных и понятных вещей. 

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

Okay, let's go...
Всего голосов 103: ↑101 и ↓2+130
Комментарии174

Как выучить иностранный язык: алгоритм

Время на прочтение13 мин
Количество просмотров162K

Если вы хоть немного пересекались с Machine Learning, то понимаете, что человеческий мозг — это, по сути, большая нейросеть. А раз так, то и работу с ним можно строить по известным в ML алгоритмам. Так я нашел универсальный способ выучить любой иностранный язык до нормального уровня в разумные сроки. И на себе проверил его эффективность.

Читать далее
Всего голосов 56: ↑50 и ↓6+62
Комментарии123

Заблуждения об английском, которым нас научила школа

Время на прочтение9 мин
Количество просмотров98K

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

Результаты этих занятий печальны. После сотен академических часов понимают и говорят ученики с трудом, но зато прочно запоминают устаревшие понятия, формализмы и локальные британские обороты речи. Этот багаж остается с ними надолго (или лучше сказать “с нами”, поскольку автор статьи после школы был точно в такой же ситуации). Избавиться от него обычно помогает только общение с носителями языка, которые внезапно не понимают, на каком языке им что-то пытается сказать этот странный русский. Или прочтение подобных статей, заботливо сотканных мозолистыми руками случайных авторов из интернета. То есть, основного источника знаний любого уважающего себя современного человека.

Читать далее
Всего голосов 136: ↑123 и ↓13+155
Комментарии415

Учим английский с умом: шкала CEFR, тесты IELTS и что всё это значит

Время на прочтение16 мин
Количество просмотров27K

Привет, Хабр. Екатерина. Очень приятно.

Я обучаю английскому языку 17 лет, в основном как частный преподаватель, но были и несколько лет в СУНЦ МГУ, и групповые занятия в языковом центре. Диапазон обучающихся — дети от 8 лет до ЕГЭ, студенты и «молодые специалисты», топ-менеджеры и научные сотрудники. И у всех, конечно, разные цели и разные мотивации — включая уникальный случай just for fun, в котором взрослая ученица за восемь месяцев прошла от «забытого школьного» до сдачи FCE (Cambridge B2 First Exam) с присвоением уровня C1 в устной речи, и всё просто потому, что ей нравился процесс.

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

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

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

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

Читать далее
Всего голосов 40: ↑38 и ↓2+46
Комментарии38

Шпаргалка по событийному моделированию

Время на прочтение4 мин
Количество просмотров5.9K

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

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

Читать далее
Всего голосов 5: ↑4 и ↓1+3
Комментарии2

Меня «заказал» инфоцыганский авторитет: как мой Телеграм-канал пытаются уничтожить люди, которым я перешел дорогу

Время на прочтение10 мин
Количество просмотров68K

Я написал популярную статью с разоблачением финансового инфоцыгана, который выдавал себя за бывшего советника Набиуллиной. После этого моему каналу объявили настоящую войну: десятки тысяч ботов устраивают бесчинство в комментариях, а самому блогу пытаются создать репутацию «токсичного». Делюсь своим опытом: что делать в такой ситуации, и как защитить свой Телеграм-канал.

Читать далее
Всего голосов 318: ↑290 и ↓28+331
Комментарии143

Корпоративная культура как двигатель найма

Время на прочтение7 мин
Количество просмотров2.3K

Как вы считаете, возможно ли при отсутствии HR-бренда привлечь за год в небольшую продуктовую компанию 100+ человек: разработчиков, тестировщиков, продуктовых дизайнеров и других специалистов не уровня джун?

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

Читать далее
Всего голосов 5: ↑4 и ↓1+3
Комментарии3

Эксперимент Базермана: как мы ежедневно теряем деньги

Время на прочтение5 мин
Количество просмотров223K

Вы ещё не слышали, как профессор Гарвардской школы бизнеса «наживается» на своих студентах? Тогда вам, наверное, будет интересно узнать о том, как продать 20 долларов за гораздо большую сумму. Скажем, долларов за 200.

Профессор Макс Базерман придумал эксперимент, который демонстрирует необъяснимое иррациональное поведение будущих профессиональных бизнесменов и менеджеров в их родной стихии — управлении проектами. Кстати, в эту же ловушку попадают и топ-менеджеры крупных компаний, с которыми профессор проводит свои семинары.

Читать далее
Всего голосов 191: ↑181 и ↓10+222
Комментарии300

Программный архитектор. Кто этот человек?

Время на прочтение8 мин
Количество просмотров9.7K

Для кого эта статья? Конечно, для людей, работающих в сфере ИТ. Для разработчиков, тестировщиков, менеджеров разного уровня, аналитиков и т.д.. Уверен, что и для общего развития всем другим людям, так или иначе, причастным к ИТ было бы все же интересно это прочитать. Просто для расширения своего кругозора, для понимания того как создаются Информационные системы

Что меня сподвигло написать эту статью? Определенный опыт взаимодействия с разного уровня руководителями. Рассмотрим такую ситуацию. У нас есть вакансия, звучит она как Архитектор. И, вроде бы, понимание есть, что должен делать этот человек, но по факту оказывается, ждут “эникейщика”. 

Что еще? Думаю, что надо договорится о подаче материала. Что, если это будет реальная история из моей практики, на мой взгляд, максимально демонстрирует работу Программного архитектора, а также некоторые выводы, которые можно сделать из нее. Постараюсь ответить здесь на следующие вопросы: Кто такой программный архитектор, какими навыками и знаниями должен обладать этот человек? Годиться? 

И последнее, думаю надо представится. Меня зовут Владимир Воловиков. Работаю в ИТ сфере я уже почти 20-ть лет. В должности Системного архитектора и Программного архитектора, в общей сложности, более пяти лет. Имею четыре международных сертификата. Текущее место моей работы Системный архитектор, Банк ВТБ. 

Читать далее
Всего голосов 7: ↑5 и ↓2+3
Комментарии14

Что я не знал про образование

Время на прочтение14 мин
Количество просмотров106K


Я тут полез изучать опыт школьных учителей в педагогике, — и совершенно внезапно обнаружил кучу важных для управления проектами принципов. В смысле, что я опять хочу познакомить вас со странным человеком и рассказать про его опыт. Итак, знакомьтесь, обычная учительница в астраханской гимназии, Ольга Анисимова, которая порвала мне все шаблоны того, что происходит в обычной школе.

Она не учит детей методам решения задачи, она учит их сначала найти саму задачу, потом прикинуть спектр вариантов подхода, а уже потом — как конкретно получить ответ.

Она относится к детям как ко взрослым во многих аспектах.

Она позволяет себе ошибаться, позволяет детям исправлять свои ошибки и аргументировано спорить с ней. Более того, она иногда специально допускает ошибки, чтобы дети не расслаблялись.

Она разрешает готовить шпаргалки и списывать. Разрешает детям «выпихивать» на ответ того, кто выучил тему. Использует понятную детям игрофикацию для мотивации.

В общем, всё настолько пропитано здравым смыслом, что просто не может и не должно происходить в школе. В чёртовой школе!
Читать дальше →
Всего голосов 166: ↑163 и ↓3+208
Комментарии482

Как и зачем делать доклады?

Время на прочтение15 мин
Количество просмотров14K

Всем привет, меня зовут Рома Неволин и я много занимаюсь докладами. Готовлю доклады, выступаю с докладами, делаю доклады, ищу докладчиков, ищу темы для докладов, а еще постоянно отвечаю на вопросы про доклады. А их всегда много.

Откуда брать тему и будет ли мой доклад интересен хоть кому-нибудь — загадка. Как собрать кучу хаотичных знаний во что-то стройное тоже непонятно. А ведь с этим нужно еще и куда-то подаваться, да и вообще, на кой оно мне нужно?

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

Читать далее
Всего голосов 59: ↑59 и ↓0+59
Комментарии13

Как управлять отделом джунов и не сойти с ума

Время на прочтение10 мин
Количество просмотров8.3K

В компании «Арбис» используется стек, который давно оброс стереотипами и предрассудками — это 1С:Платформа. Более того, у большинства 1С прочно связана с бухгалтерией. И, хотя в Арбис программный продукт вообще с ней не связан — это облачное решение, сервис на 1000 пользователей — опытных спецов по 1С для него просто нет. 

И в довершение, компания базируется в Архангельске, где есть утечка кадров в большие города и нет рынок вакансий в принципе небольшой. Даже хуже. Процветает хантинг сотрудников, потому что Абрис — единственная компания, которая воспитывает и учит специалистов по 1С.

Где искать людей? Компания сделала ставку на джунов. Об этом на конференции TeamLead Conf 2021 рассказала Маргарита Маковеева, которая каждого сотрудника в своем отделе выращивала с нуля. И сегодня мы опишем подробности ее решения. Видео ее выступления можно посмотреть здесь.

Читать далее
Всего голосов 11: ↑8 и ↓3+7
Комментарии12

Когда сделаете доработку?

Время на прочтение8 мин
Количество просмотров16K

Довольно часто я попадаю в ситуацию, когда мне нужно в моменте оценить длительность реализации реализации бизнес-фичи. Обычно это какая-нибудь рядовая встреча, на которой инициатор бизнес-идеи, резво размахивая руками в воздухе, рассказывает о своем предложении. В конце своего выступления, в котором часто много слов (но не цифр) сказано о том, зачем это фича нужна и какой эффект она даст, всегда звучит сакральный вопрос: «Когда сделаете эту великолепную доработку?»

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

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

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

Читать далее
Всего голосов 62: ↑60 и ↓2+64
Комментарии24

Как тимлиду найти идеального кандидата, и что делать с неидеальными

Время на прочтение15 мин
Количество просмотров14K

Привет, Хабр!

На связи Андрей Рыжкин, CTO AGIMA. В нашей компании более 30 команд разработки, и у каждой свой тимлид (или несколько). Людей много, а значит, их нужно нанимать, развивать, мотивировать, а иногда – расставаться с ними. Работа с людьми на мой взгляд – это одна из важнейших и при этом самых сложных функций тимлида или технического руководителя. Эта статья – об одном из аспектов этой работы: о том, как искать и нанимать разработчиков. В основе материала мой контент для курса «Руководитель команды разработки», а также мой опыт за весь карьерный путь от разработчика до CTO.

Читать далее
Всего голосов 18: ↑17 и ↓1+22
Комментарии23
1

Информация

В рейтинге
Не участвует
Откуда
Россия
Зарегистрирован
Активность