Предполагаю, что каждый человек, который читает эту статью, хотя бы в общих чертах знает что такое встречи 1-1. Поэтому я не буду углубляться в теорию, а напишу текст опираясь на свой опыт, где попытаюсь раскрыть выводы и детали к которым я пришел за несколько лет своей работы.
User
Go — 100 вопросов/заданий с собеседований
Приветствую тебя, хаброжитель!
В этой статье разберём 100 вопросов, они покрывают львиную долю того, что могут спросить на собеседовании джуниор Go-разработчика с практически любой специализацией. Конечно же, в реальной работе на Go требуются немного другие скиллы, чем умение быстро ответить на любой вопрос. Однако сложилась добрая традиция делать из собеседования викторину с главным призом в виде трудоустройства — к этому нужно быть готовым.
Как я с 0 поднял свой уровень английского до B2 и подтвердил этот уровень на экзамене IELTS Academic
Привет, Хабр!
В этой статье я расскажу о своем опыте изучения английского языка и поделюсь вещами которые работали и не работали для меня. Процесс изучения языка очень индивидуален, и никогда нельзя утверждать что верный какой-то один метод / схема (хотя некоторые статьи на Хабре прямо говорят: вот этот метод правильный, а вот этот нет).
Начнем с бекграунда и причин.
Я – инженер машиностроитель (мой профиль – торцевые уплотнения вращающихся валов). Я начал работать в своей отрасли сразу после бакалавра, параллельно заканчивая магистратуру, и как только я начал работать, я стал стараться впитать как можно больше теоретических знаний по моей специальности из академических источников. Достаточно бысто я понял, что последняя серьезная книга по моей специальности на русском языке была написана в 1978 году. И спустя больше чем 40 лет технологии сильно поменялись, а вот их описание на русском языке отсутствовает. Зато я нашел на reddit людей работающих в штатах в моей же отрасли. Они мне насоветовали кучу классной литературы. Разумееется, она вся на английском, и русского перевода не имеет.
Начал свой путь изучения языка я в январе 2022 года с около нулевого уровня. В всех моих школах преподование английского языка было не на самомом высоком уровне, а в университете было достаточно выучить 30 предложений наизусть чтобы получить достойную оценку на экзамене.
Конечно, перед началом обучения я прочитал много статей на хабре о том как люди учат языки. Некоторые из них поражали скоростью овладения материалом (что-то вроде с нуля до fluent за 4 месяца). Но одна вещь была неизменна – у всех был какой-то план изучения языка.
Самая дешевая заводская панель управления умным домом, которая отлично работает
Несколько лет назад уже писал про свои поиски идеальной и недорогой панели управления умным домом (статья собрала 200 закладок), тогда в 2020 году я остановился на недорогом андроид планшете, который перепрошил на чистый андроид для выполнения удаленных команд через ADB.
Программно меня всё устраивало, но вот красиво закрепить планшет на стене без колхоза и дополнительных действий было трудно. Пришлось отдавать его в багетную мастерскую для оформления в рамку, выпиливания в стенках мест под кабель и кнопки, а затем придумывать настенный крепеж, который бы не отваливался при нажатии на экран, а кнопку включения пришлось подпаивать внутри корпуса планшета, чтобы сделать её внешней. К тому же в случае проблем с устройством пришлось бы эти шаги повторять заново.
С тех пор я переехал и не захотел повторять все эти шаги, мне хотелось взять готовое заводское устройство, программно его настроить, отвязать от любых облачных сервисов и просто вставить его в подрозетник или поставить на стол. Переплачивать за панель тоже не хотелось. В итоге таким вариантом стала Sonoff NSPanel.
Выбор пал на NSPanel из‑за цены около 3,5 тысяч рублей, а также возможности установки в подрозетник или покупки настольной подставки — как у меня на фото.
Разворачиваем веб-приложение в Kubernetes с нуля
Современные веб-приложения, даже простые на вид, часто подразумевают нетривиальную архитектуру, состоящую из многих компонент. В статье «Делаем современное веб-приложение с нуля» я рассказал, как она может выглядеть, и собрал для демонстрации простейшую реализацию на стеке из нескольких популярных технологий. В неё вошёл бэкенд, фронтенд, воркер для асинхронных задач и аж два хранилища данных — MongoDB как основная база и Redis как очередь задач. В «Делаем поиск в веб-приложении с нуля» я показал, как можно добавить полнотекстовый поиск, и подключил третье хранилище — Elasticsearch.
Всё это время для простоты разработки и отладки компоненты приложения запускались локально через Docker Compose. Но как развернуть такое приложение в настоящем продакшн-окружении? Как обеспечить горизонтальное масштабирование? Как раскатывать новые релизы без простоя?
В этой статье мы разберёмся, как разворачивать многокомпонентное веб-приложение в кластере Kubernetes на примере его локальной реализации — minikube. Мы поднимем виртуальный кластер прямо на рабочем ноутбуке, разберёмся с основными сущностями Kubernetes, запустим и соединим между собой компоненты демо-приложения и обсудим, какие ещё возможности Kubernetes пригодятся нам в суровом энтерпрайзе. Если вы занимаетесь разработкой и слышали о Kubernetes, но ещё не имели возможности пощупать его руками — добро пожаловать под кат!
Оптимизация памяти и управление сборщиком мусора в Go: GOGC и GOMEMLIMIT
Всем привет, меня зовут Нина Пакшина, я работаю Golang разработчиком в Лента Онлайн в команде операций.
В данной статье я расскажу о том, как управлять сборщиком мусора в Go, как оптимизировать потребление памяти приложением и защититься от ошибки out-of-memory.
Шпаргалка по SQL (postgres), которая выручает меня на собесах
Привет, Хабр!
Я решил посвятить свою первую статью SQL. Вопросы, рассмотренные ниже мне задавали на собеседованиях на позицию python-разработчика. Естественно отвечать правильно получалось не всегда, а если точнее то чаще не правильно, однако проведя N часов в рефлексии я составил перечень ответов, которыми пользуюсь до сих пор.
Данная информация предполагает знание основ языка запросов и я надеюсь, она окажется полезной для разработчиков, которые сейчас активно ищут работу а также, что ты прочитаешь этот текст до конца и добавишь свой вопрос к перечню (ну или поправишь неточности в существующих)
5 паттернов параллельного программирования в GO, которые сделают ваш следующий проект лучше
Параллельное программирование — одна из самых интересных фич, которые может предложить вам Golang. Идея, лежащая в основе параллелизма, заключается в одновременной работе над несколькими разными процессами, что помогает избежать застревания в задачах, выполнение которых занимает много времени.
Приручение черного дракона. Этичный хакинг с Kali Linux. Часть 8. Методы и средства внешней разведки
Приветствую тебя, дорогой читатель, в восьмой части серии статей «Приручение черного дракона. Этичный хакинг с Kali Linux».
В одной из прошлых частей мы затронули первую фазу любой атаки, именуемую футпринтингом (footprinting) и разобрали несколько простых примеров сбора информации об объекте расположенном в локальной сети. Однако, мы так и не рассмотрели подробно методы и средства для проведения внешней разведки, и сбора информации. Самое время это исправлять! Поэтому данная статья будет полностью посвящена именно этой теме.
Думаю, что тебе часто попадалась на глаза аббревиатура OSINT (open-source intelligence), являющая собой миру отдельное направление, посвященное сбору информации из открытых источников. В рамках данной статьи я попытаюсь наглядно продемонстрировать каким образом злоумышленник проводит первичный сбор информации из открытых источников о цели и какие инструменты в составе Kali нам в этом помогут. В качестве примера я буду проводить сбор информации о коммерческом Банке с которым у меня заключен договор.
На технических собеседованиях даже нормальные люди звереют
Расскажу несколько историй, чтобы стало понятнее, что я имею в виду.
История первая: собеседование прошло отлично. Кандидат был уверен в своих силах, поэтому сотрудник компании забрасывал его новыми и новыми вопросами. Казалось, всё складывается прекрасно… но только казалось. Позже, когда кандидату предложили работу, он ответил отказом и пожаловался на то, что тон собеседования был слишком агрессивным.
История вторая: кандидат хорошо справлялся, пока не допустил пустячную ошибку в такой мелочи, что этим спокойно можно было пренебречь. Но собеседующие уцепились за эту ошибку, в их отношении к кандидату появилась едва уловимая враждебность. С этого момента всё пошло под откос.
Предотвращаем утечки памяти в Go, ч. 2. Особенности рантайма
Мы продолжаем наш рассказ о причинах повышенного потребления памяти в языке Go. В предыдущей статье мы детально разобрали ошибки бизнес-логики приложения, которые могут привести к утечкам памяти. Сегодня же сосредоточимся на особенностях рантайма языка Go.
Система увлажнения воздуха для дома или квартиры
По многочисленным просьбам делюсь своим способом сделать недорогую стационарную высоконапорную систему увлажнения воздуха. Ниже будет описана конкретная система, работающая в моей квартире с 2016 года, с фотографиями и подробностями. Похожим образом по моей рекомендации было сделано ещё с десяток подобных систем разного масштаба.
Насколько круто иметь свой сервер в комнате
Некоторые олды часто вспоминают эпоху до смартфонов, когда в студенческие времена или в школе у них был любимый настольный компьютер. Он стоял прямо в комнате, рядом с кроватью, и работал как личный ассистент в режиме 24/7: играл фоновую музыку (со специальным плейлистом, когда в гости приходили девушки), показывал фильмы, будил уведомлением из аськи или ирки, скачивал сайты ночью по диалапу и т. д.
Но кажется, что эта эпоха возвращается. Только на новом уровне. Сейчас опять стало очень круто иметь в комнате свой сервер, только он выглядит иначе и выполняет другие функции.
Как сделать программу на Go быстрее на 42%, изменив один символ
Если вы прочитали заголовок и подумали «ну, ты, наверно, сделал сначала что-то глупое», то вы правы! Но что такое программирование, как не упражнения в глупых ошибках? Поиск глупых ошибок — это и есть самое большое удовольствие!
Также стоит заранее сделать оговорку о бенчмаркинге: ускорение на 42% было замерено при выполнении программы с моими данными и на моём компьютере, поэтому относитесь к этому результату с долей скепсиса.
Что делает программа?
codeowners — это программа на Go, выводящая владельцев каждого из файлов в репозитории согласно набору правил, указанному в
файле GitHub CODEOWNERS
. Правило может гласить, что всеми файлами с расширением .go
владеет команда @gophers
, или что всеми файлами в папке docs/
владеет команда @docs
.Полезные советы по (не) изучению английского
Я учу английский язык уже 19 лет. Как и миллионы других людей, я делаю это крайне неэффективно. Моя история изучения английского типична для среднестатистического программиста. В школе английскому не уделялось практически никакого внимания. В вузе начал изучать язык более осознанно, так как были понятны перспективы владения этим языком при трудоустройстве, и это придавало мотивации. В дальнейшем, когда стал работать, появилось больше свободного времени и ресурсов, что позволило достичь приемлемого уровня знания языка. И только сейчас, оглядываясь назад, я понимаю, где совершил ошибки, а что сделал правильно.
Самое главное, что мне стоило бы знать - для каждого уровня языка должна быть своя стратегия. То, что эффективно на одном уровне, абсолютно не подойдет на другом. Обычно уровни знания языка делят на basic (A1, A2), independent (B1, B2), proficient (C1, C2). Эти ступени, как несгораемая сумма: если один раз достичь определенного крепкого уровня, то вниз точно не спустишься, даже через продолжительное время. Их можно представить, как три горки, каждая из которых более крутая, при этом после каждой из них есть прямой участок. Желательно эти горки пройти с максимальным ускорением, потому что, если остановиться, обязательно скатишься обратно и придется разгоняться заново.
Вопросы и ответы для собеседования Go-разработчика
Структурирование информации — очень полезный навык. И дабы привнести некоторый порядок в этап подготовки к интервью на должность Golang разработчика (и немножко техлида) решил записывать в этой заметке в формате FAQ те вопросы, которые я задавал, задавали мне или просто были мной найдены на просторах сети вместе с ответами на них. Стоит относиться к ним как к шпаргалке (если затупишь на реальном интервью — будет где подсмотреть) и просто набору тем, которым тебе стоит уделить внимание.
Я постарался копнуть в каждый вопрос чуть глубже чем, возможно, надо бы — что бы у читателя был не только короткий ответ на вопрос, но и некоторое понимание "а почему именно так устроена та или иная штука". Более того, крайне рекомендую ознакомиться и с ссылками на источники, что будут под ответами — там вы найдете более развернутые ответы.
Да, это очень объемный пост, и вряд ли его можно вдумчиво осилить за один подход, но поместив его в закладки он, возможно, когда-то сослужит вам добрую службу (читать его можно по частям, находясь в метро или между вечными совещаниями; да и Ctrl + F
никто не отменял). Ещё ему очень не хватает оглавления для удобной навигации между вопросами, но у хабраредактора нет возможности генерировать TOC (если будут запросы об этом в комментариях — сделаю его руками). Об очепятках, пожалуйста, пишите в личку.
Как айтишнику получить визу зарубеж на основании удаленной работы в 2022 году
В течение всего прошлого года я искал информацию о разных визах для цифровых кочевников. Пандемия бушевала, страны закрывались для туризма, но как на дрожжах появлялись визы для удаленщиков. Хотелось на всякий случай иметь интересные варианты под рукой, поэтому я сохранял наиболее привлекательные программы в отдельный список вместе со всеми требованиями. Кажется сейчас самый подходящий момент, чтобы поделиться этой подборкой. Ниже представлены требования к оформлению виз для цифровых кочевников в разных странах и ссылками на подачу заявлений.
Памятка по борьбе с алкоголем или Как пережить фуршеты
Меня, если честно, достаточно сильно раздражают всевозможные застолья. Потому что гораздо приятнее посидеть с паяльником или читая книгу, а не "… хорохорясь, ерепенясь и валяясь, как колода..." провести выходные. Но традиции-с, будь они неладны, формировались столетиями и не умея пить — бывает достаточно сложно вписаться в коллектив, найти нужный подход и т.д. Особенно грешат этим делом всевозможные руководящие кадры из старого поколения. Что же делать тем, для кого алкоголь и необходимость его употреблять — это просто лишняя головная боль? Самый простой ответ — НЕ ПИТЬ, но на практике полностью это очень сложно реализовать. Эффективнее в наших реалиях принять тезис «алкоголь — просто инструмент» и учиться с ним правильно работать и использовать для решения своих задач с минимизацией ущерба для здоровья.
Статью кладем в закладки и рассылаем всем друзьям, подчиненным и т.д. и т.п. Есть время подготовиться и встретить новогодние корпоративы во всеоружии. Практически уверен, что многое из описанного активно используют те, кто «не напиваться» обязан по долгу службы. Простой же обыватель чаще про это не думает, полагаясь на удачу и легкую руку. И чаще всего оказывается в проигрыше. Предупрежден = вооружен, поэтому под катом читаем, как победить в битве с алкоголем.
Коты и лебеди на выпасе: листаем книги для введения в профессию менеджера
Привет! Это Кирилл, куратор потока «Менеджмент». На Хабр часто выкладывают посты про интересную профессиональную литературу. В итоге наша площадка давно превратилась в одну из самых крупных библиотек с отзывами на книги про IT, но структурировать это никто пока не пытался. Чтобы это исправить, запускаем серию библиотечных подборок. Под катом первая из них — с книгами, которые помогут новичку освоиться в роли руководителя, а маститому боссу освежить знания и стать ещё лучше.
Хабравыжимка #1: Софт скилы для разработчика
Information
- Rating
- Does not participate
- Registered
- Activity