Pull to refresh
17
0
Артем Сидорук @Sugrob-57

SDET

Send message

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

Level of difficultyEasy
Reading time7 min
Views93K

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

Меня зовут Андрей Столбовский, последние 5 лет я работал в Яндексе, а в прошлом году перешёл в Амазон и теперь работаю Software Development Manager в AWS Redshift – это мой первый полноценный опыт работы в международной компании. 

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

Итак, поехали. 

Поехали!
Total votes 235: ↑232 and ↓3+275
Comments160

Оптимизация DevOps: Как персональные стенды и Grafana улучшают разработку и мониторинг

Level of difficultyMedium
Reading time8 min
Views9.7K

Всем привет, меня зовут Зуев Алексей, и я работаю DevOps-инженером в компании Bimeister! Сегодня я расскажу вам о том, как мы облегчаем жизнь нашим разработчикам и как разработчик может отследить состояние своего микросервиса в namespace Kubernetes. Основная цель этой статьи - описать, как мы пришли к дашборду для персональных стендов разработчиков.

Читать далее
Total votes 11: ↑11 and ↓0+11
Comments5

Шорт-листы «Технотекста 2023»: достойные из достойных

Reading time27 min
Views11K

Мы получили 1022 заявки, приняли из них 918, в шорт‑листы попало более 300 статей. Точной цифры по шорт‑листам нет неслучайно: поскольку наш естественный интеллект это вам не ChatGPT склонен уставать и ошибаться, несколько статей могут попасть в шорты, но, скорее всего, выпадут из них — так, во время подготовки этой статьи выяснилось, что из финала выбыли двое участников, скрывшие свои публикации в черновики.

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

Читать далее
Total votes 84: ↑84 and ↓0+122
Comments41

Как написать идеальный автотест: 25 джедайских принципов

Level of difficultyMedium
Reading time10 min
Views14K

Привет! Меня зовут Дмитрий Трофимов (@angryqa во ВКонтакте или @trofimovdigital на просторах интернета). Я тимлид отдела автоматизации тестирования в VK ID. С командой мы проделали большой путь при внедрении автотестов в наш продукт, и на этом пути мастерски овладели принципами написания идеальных тестов, которыми спешу поделиться с вами.

Читать далее
Total votes 25: ↑24 and ↓1+33
Comments8

Медленная сборка кода с .NET Roslyn: как найти и устранить причину

Level of difficultyHard
Reading time12 min
Views4.7K

.NET разработчики знают, что такое ждать сборки кода. Работать при этом невозможно: пока не увидишь, как обновится приложение, — не перейдешь к следующему шагу. А переключиться на другую задачу за это время не успеешь. Получается, если в день переписать код 5 раз, можно потерять полчаса при сборке, а то и больше.

Теперь на примере платформы автоматизации маркетинга Mindbox. Основное программное решение — это монолит на C#: несколько миллионов строк, 50 проектов, над которыми одновременно работают десятки команд. Даже сэкономленная при сборке минута выливается в кучу продуктивных человеко-часов. Поэтому, когда речь зашла о переходе всей компании на MacBook в будущем, мы решили выяснить, как это отразится на производительности.

Читать далее
Total votes 46: ↑46 and ↓0+53
Comments26

Сколько мне стоило попасть в Гугл и получить повышение, не проработав там ни одного дня

Level of difficultyEasy
Reading time10 min
Views93K

Декабрь 2020, вторая волна Ковида в разгаре. Я ПМ на удаленке в Американской компании. После похорон отца в Тбилиси я находился в прострации, надо было возвращаться в США и как-то менять своё положение, ведь денег, которых я зарабатывал явно не хватало на нормальную жизнь. Сами воспоминания о моём предыдущем поиске вызывали во мне холодный озноб и какой-то внутренний голос тихо шептал «подожди, сейчас пандемия, многие и о таком мечтают, как-нибудь выкрутишься…».

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

Я зарегистрировал себе американский номер в Google Voice, чтобы мне начали звонить рекрутеры и начал рассылать резюме. Я разослал около сотни адаптированных резюме и указал в LinkedIn что активно ищу работу. Постепенно на меня начали выходить рекрутеры небольших компаний, но я понимал, что в них условия будут в лучшем случае на 40% лучше текущей и это все равно не решало моих проблем. Хоть и казалось, что на LinkedIn висят тысячи позиций, однако основных работодателей я этим исчерпал. Подавался я в основном на Sr. Project Manager или Engineering Manager позиции.

Осознание пришло, когда я стал читать teamblind.com – лучший ресурс в США по анализу рынка в ИТ и levels.fyi где можно посмотреть реальные зарплаты. Раньше я читал Glassdoor, но информация на нем устарела.

Оказалось, что в финансовой сфере в США, которая мне была интересна - плохие условия и токсичная культура, тоже самое в консалтинге кроме компаний из Big4 или MBB где надо работать долгие часы, но возможно получать 1+ миллион долларов в год дослужившись до партнёра. Самыми интересными оказались компании, которые называют FAANG (Fb, Apple, Amazon, Netflix, Google) иногда в место этого списка используют FAANGMULA справедливо добавляя туда Microsoft, Uber, Lyft и Airbnb – все они технологические, инновационные компании не просто создающие бизнес-продукты, но и технологии, которыми пользуются весь мир. Компании, создающие де-факто стандарты разработки цифровых продуктов, инвестирующие в научные исследования, создающие легендарные условия для своих сотрудников, чем привлекают умнейших инженеров и ученных со всего мира.

Читать далее
Total votes 104: ↑88 and ↓16+117
Comments125

Чем различаются Kafka и RabbitMQ: простыми словами

Reading time8 min
Views86K

Программные брокеры сообщения уже стали стандартом при построении больших и сложных систем. Однако до сих пор не все ИТ-специалисты понимают, как работают эти инструменты. Главный системный аналитик «Иннотех» Павел Малыгин помогает разобраться в брокерах сообщениях и их работе.

Читать далее
Total votes 56: ↑53 and ↓3+55
Comments33

CodeLama в вашей клавиатуре | Локальный Copilot для любого поля ввода

Level of difficultyEasy
Reading time9 min
Views18K

Стою я значит утром (около 2 часов дня) возле кофеварки и листаю ленту хабра, а там CodeLama вышла. Copilot для бедных это или панацея в мире локальных текстовых моделей? Попытаюсь не отвечать на этот вопрос, ведь ваши соседи снизу утонут в воде, которая сейчас льётся из экрана.
Читать далее - на свой страх и риск. Статья писалась спинным мозгом и глубокой ночью, как следствие я получил натянутую на глобус сущность, которую можно инкапсулировать в технотекст, что бы она вызывала меньше подозрений у случайного читателя. Ну вы поняли уровень, верно?
Предлагаю обойтись кратким вступлением и перейти сразу к делу.

Сразу к делу
Total votes 48: ↑48 and ↓0+48
Comments14

Как поговорить с компьютером, если у вас не поехала крыша

Level of difficultyEasy
Reading time6 min
Views12K

Сейчас расскажу, как установить говорящего на английском ИИ локально и как попользоваться им в режиме прямого доступа. Понадобится компьютер средней паршивости, типа 16Гб памяти, проц на 8 ядер, а видюха любая и даже без.

Читать далее
Total votes 24: ↑24 and ↓0+24
Comments12

Три важных качества CTO, о которых я не догадывался, пока был разработчиком

Level of difficultyEasy
Reading time8 min
Views39K

Я начинал карьеру как фронтенд-разработчик и прошел по всем стандартным этапам: от джуниора до сеньора и тимлида, потом стал руководителем отдела. И дальше, конечно, планировал стать CTO — Chief Technical Officer. И только через несколько лет узнал, что мои представления о том, какие навыки нужны на этой должности, были далеки от реальности.

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

Читать далее
Total votes 95: ↑91 and ↓4+106
Comments65

Зачем рассказывать про контейнеризацию в 2023 году

Level of difficultyMedium
Reading time13 min
Views22K
image
Техножрец DevOps бережно описывает документацию по проекту

Опытные специалисты с характерным оттенком глаз могут справедливо возмутиться, что это всё уже давным-давно разжёвано и вообще RTFM. И будут отчасти правы. Тем не менее приходят новые специалисты, которые не застали бесплатную рассылку дисков с Ubuntu и вдумчивую компиляцию ОС с нуля.

Каждая новая технология поначалу держится на энтузиастах, которые её полностью понимают. Например, первые пользователи радио знали почти всё про радиосвязь, могли на коленке собрать детекторный приёмник и ловить радио «Маяк» на металлическую вешалку и моток проводов. Первые пользователи GNU/Linux знали всё про ядро и ключевые принципы работы. По крайней мере, вариант «поправил и скомпилировал драйвера для модема, чтобы настроить сеть» был не самым редким. Текущие пользователи обычно не сталкивались с основами, так как начали щупать технологию уже после снижения порога входа.

Те же процессы идут не только в среде потребителей технологий, но и среди инженеров. С одной стороны, узкая специализация совершенно нормальна, с другой — мы рискуем получить аналог культа Галактического Духа на Анакреоне из цикла романов «Основание» Азимова. Техножрецы выполняют сложные ритуалы, ядерные реакторы пайплайны работают. Ровно до тех пор, пока всё не сломается к чертям на низком уровне, а чинить будет некому.

Так происходит и с контейнеризацией. Я всё чаще встречаю на собеседованиях devops-инженеров, которые знают, как пользоваться Docker и Podman, пишут Dockerfile, но теряются, когда спрашиваешь про namespaces, и начинают плавать при вопросе: «А зачем, чем RPM хуже?» Все собирают контейнеры, и я собираю. Таков Путь. Не всегда, кстати, оптимальный.
Читать дальше →
Total votes 59: ↑59 and ↓0+59
Comments13

Как написать автотесты деплоя и сэкономить нервы DevOps-инженеров

Reading time7 min
Views8.6K

Привет! Меня зовут Артём Комаренко, я работаю на позиции QA Lead в команде PaaS в СберМаркете. Хочу поделиться историей, как мы придумывали способ быстро убедиться, что очередные изменения в скриптах деплоя не разломают процесс выкатки во всей компании. Статья будет полезна QA-специалистам и DevOps-инженерам, которые хотят автоматизировать тесты инфраструктуры.

Читать далее
Total votes 8: ↑8 and ↓0+8
Comments14

Создание бесплатного ChatGPT телеграм бота на Python

Level of difficultyMedium
Reading time3 min
Views36K

Это моя первая статья но надеюсь вам понравится! Почему я решил создать эту статью, когда скорее всего есть уже много других подобных? Дело в том что официальное API компании OpenAI(компании которая создала ChatGPT) - платное(пробный период быстро заканчивается), но недавно я нашел метод, которым сам пользуюсь, через который можно создавать приложения с использованием ChatGPT - бесплатно, покажу на примере просто Telegram-чатбота.

Читать далее
Total votes 11: ↑3 and ↓8-3
Comments7

Еще раз про интеграционное тестирование ASP.NET Core c testserver и testcontainers

Level of difficultyEasy
Reading time9 min
Views11K

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


Сегодня я предлагаю совершить небольшое исследование на тему "как нам обустроить интеграционное тестирование и встроить его в сиайку".
Написать эту заметку меня сподвигла дискуссия, случившаяся недавно на работе. Инициативная группа "четырехглазых в свитерах" пыталась родить меры по улучшению качества нашего изделия и снижения трудозатрат QA-инженеров на проведение рутинного регрессионного тестирования. Как это часто бывает, разработчики если и писали тесты, то только модульные, оставляя интеграционные и end-to-end для тестировщиков. Для выполнения интеграционного тестирования QA-инженеры используют "тестовый стенд", на котором развернуты компоненты приложения (еще около 40, с позволения сказать, "микросервисов"), сервер базы данных (с не всегда ясным наполнением этой самой базы), брокер сообщений (RabbitMQ) и все остальное, что может потребоваться для запуска приложения. На этот тестовый стенд натравливаются автотесты, которые шатают приложение за все доступные снаружи конечные точки, таблицы БД и элементы UI пытаясь проверить максимальное количество тестовых сценариев в границах (и за ними!) возможных входных данных.

Читать дальше →
Total votes 12: ↑12 and ↓0+12
Comments14

Быстрый деплой ReportPortal-а в целях ознакомления

Reading time3 min
Views2.8K
Некоторое время назад решил я воочию посмотреть что же такое ReportPortal, но эта заметка не о том, что это за монстр и что он умеет или не умеет, а о том, как его быстро задеплоить с целью «познакомиться» и «пощупать».
Читать дальше →
Total votes 4: ↑3 and ↓1+2
Comments0

Регулятор фантазий

Reading time6 min
Views5K

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

Думать перед тем, как делать, приходится всем, кто работает в IT – у нас всё слишком многовариантно. Фантазируют программисты, аналитики, тимлиды, менеджеры, РП, сисадмины, владельцы продукта и прочие, вроде фасилитаторов. Если понаблюдать за этим процессом – фантазирования на тему «что и как можно сделать» - то легко заметить одну странность.

Один и тот же человек, раздумывая над одной и той же, по сути, задачей, может выдавать совершенно разные идеи. Задача может быть как схожей, так и прям тождественно равной. То человек предлагает 10 вариантов реализации, то, вдруг, едва выдавливает из себя один – скромный и простой. Почему?

Есть теории, которые делят людей на генераторов идей и прочих (например, Белбин, красные/зелёные/синие и т.д.). Но, повторю, речь об одном и том же человеке и одной и той же задаче. Так почему он то фонтанирует идеями, то молчит в тряпочку?

На высшую истину не претендую, но я пришёл к такому выводу: ключевым является вопрос «кто будет реализовывать?».

Читать далее
Total votes 19: ↑16 and ↓3+17
Comments6

Использование Gatling. Введение

Reading time11 min
Views14K

Привет! Мы — команда тестирования производительности в Тинькофф, и мы любим инструмент Gatling. В цикле статей мы расскажем об использовании Gatling и дополнительных инструментов, упрощающих разработку скриптов.

Возможно, вы уже читали наши статьи про Gatling: первую и вторую. Они успели устареть, поэтому мы решили вернуться с обновленной информацией.

Читать далее
Total votes 18: ↑18 and ↓0+18
Comments3

Grafana и автотесты: учимся измерять работу тестов

Reading time8 min
Views17K
Управление — трудоёмкая работа, которая усложняется при отсутствии подходящего инструмента. Легко упустить из виду постоянно меняющиеся компоненты и сложно быть в курсе событий: что-то обязательно проходит незамеченным.

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

Этот список можно продолжать и вводить новые метрики для задач тестирования. Расположение метрик на одном экране позволяет получать прозрачные отчёты о тестировании, которые понятны и инженерам, и руководителям. Главное в этом деле — научиться измерять и правильно подсвечивать проблемы. Тогда управлять тестированием станет проще.

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

image
Читать дальше →
Total votes 30: ↑30 and ↓0+30
Comments8

Создание VK чат-бота на базе VkBotCore C#

Reading time3 min
Views9.7K
Данная статья создана для ленивых людей, которые не хотят много кодить и иметь дело со всей «начинкой».

Подготовка группы


Для начала нам необходимо создать сообщество, которое будет привязано к нашему боту.

Для этого заходим в раздел «Сообщества» и нажимаем «Создать сообщество»

image

Теперь настроим его для работы с Callback-API //Подробнее про Callback-API

Переходим в «Управление»>>
Читать дальше →
Total votes 8: ↑8 and ↓0+8
Comments4

Чат-бот для Вконтакте на ASP.NET Core C#

Reading time5 min
Views61K

В данной статье представлен пошаговый пример создания простого чат-бота в социальной сети VK на ASP.NET Core C#.


Глава 1. Подготовка


Начнем с создания и настройки сообщества.


Читать дальше →
Total votes 38: ↑36 and ↓2+34
Comments11
1

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Works in
Date of birth
Registered
Activity