Этот репозиторий создан для “FAANG Interview” сообщества с целью упорядочить полезные ресурсы упоминаемые в чате. Каждая ссылка в документе должна сопровождаться описанием. Не стесняемся слать pull реквесты и делать репозиторий лучше с каждым днем.
- FAANG - Facebook, Apple, Amazon, Netflix, Google. Usually also means Microsoft, Github, Linkedin, Instagram, Snapchat, Palantir, Bloomberg, IBM. For Russian Companies: Yandex, - VK, Kaspersky and JetBrains.
- LP - Leadership Principles (by Amazon)
- CtCI - Cracking the Coding Interview (book)
- SRE - Site Reliability Engineer
- SWE/SE - Software Engineer
- SDE - Software Development Engineer (Amazon)
- SysDE - System Development Engineer (Amazon)
- OA - Online Assessment
- HC - Hiring Committee
- HM - Hiring Manager
- BR - Bar Raiser (Amazon)
- LC - LeetCode
- CP - Competitive programming
- GCJ - Google Code Jam
- CF - Codeforces
- OJ - Online Judge
- TLE - Time Limit Error
- WA - Wrong Answer
- LN - Linkedin (must have professional social network)
- CS - Computer science
- DS - Data science
- TC - Total compensation
- CLRS - Introduction of Algorithms (book)
Мы проводим технические мок-интервью в парах каждую неделю, больше деталей о том как это проходит в этом документе (док открыт для комментирования). Гайд как проводить мок-интервью.
- Сайты где можно решать задачи:
- Как попасть в Google: инструкция по подготовке - статья Сергея Семы о подготовке к интервью в фаанг.
- http://larrr.com/ - блог Ларисы о Гугл, интервью, жизни в долине.
- Хочу работать в Google: Read Me First! - подборка материалов по подготовке
- https://t.me/empireinthemaking - телеграмм канал Ларисы
- Cracking the coding interview book - книга, ставшая классикой при подготовке
- Mock интервью
- https://www.pramp.com/ - парные мок интервью
- http://www.gainlo.co/ платный. позволяет собеседоваться с реальными сотрудниками из ФААНГ. сайт гарантирует это. цена указывается своя на каждого интервьюера, от 100 до 200 долларов за мок. обещают подробный фидбэк после мока. Another opinion about the service.
- https://interviewing.io/ - Practice interviewing with engineers from Google, Facebook, and more... anonymously. Price varies $100-200.
- Гайды по подготовке к интервью:
- Interview preparation Guide - подборка ссылок на полезные репозитории, видео, курсы, и книги.
- Ilyushin/google-interview-university: A complete daily plan for studying to become a Google software engineer.
- Tech Interview Handbook
- Coding Interviews: Questions, Analysis & Solutions (Expert's Voice in Programming)
- Uber Software Developer Interview Prep - подготовка к интервью в Uber
- The Interview Study Guide For Software Engineers - DEV Community
- Comprehensive Data Structure and Algorithm Study Guide
- LinkedIn группа участников чата для обмена контактами
- Статья про интервью в Амазон от одного из менеджеров
- Сервис для проверки своего резюме (гуглить боты ATS)
- Подготовка к собеседованиям в IT-гиганты - Habr
- Курсы
- Курсы по алгоритмам от Роберта Седжвика Часть 1
- Курсы по алгоритмам от Роберта Седжвика Часть 2
- https://cses.fi/book/book.pdf - Вот хорошая книга для подготовки для интервью. Там и DP есть. Она в основном для тех кто готовится к олимпиадам, т.е. уровень выше, но покрывает и темы которые попадаются в интервью
- Coderust: Hacking the Coding Interview - Платный курс (в текстовом виде) по алгоритмам и структурам данных
- Master the Coding Interview: Data Structures + Algorithms - курс на udemy
- JavaScript (JS) Algorithms and Data Structures Masterclass - Курс ознакомляет с основными принципами решения задачек, основными алгоритмами и структурами данных
- Coding Interview Bootcamp Algorithms, Data Structures Course На практике дает возможность решить самые популярные задачки, потом идет решение с его разбором с несколькими подходами. Показывает как на практике применять те или иные подходы и оценивать их сложности (big O) и выбирать лучшее решение.
- Algorithmic Toolbox Курс для тех кто в начале пути. Поможет понять big-O, элементарные алгоритмы и подходы к ним.
- Computer Sc - Data Structures and Algorithms - видео курс
- Algorithms, Computer science, Computing - курс по алгоритмам на Khan Academy
- Grokking the Coding Interview: Patterns for Coding Questions платный курс “Patterns for Coding Questions”
- Data Structures and Algorithms - coursera course
- Алгоритмы: теория и практика. Методы
- Introduction to Algorithms - course from MIT
- Lectures in Advanced Data Structures (6.851) - MIT lectures by prof. Erik Demaine
- Intro to Algorithms and Data Structures - от Google на Python (бесплатно, в конце есть разбор всех этапов онсайт интервью)
- Лекции Андрея Станкевича: базовый курс
- Лекции Андрея Станкевича: Дополнительные главы алгоритмов - продвинутый курс
- https://algoprog.ru/ - олимпиадное программирование
- Книги
- Algorithms, 4th Edition by Robert Sedgewick and Kevin Wayne - более расширенный вариант курсов выше. слайды к книге
- Computer Science Distilled: Learn the Art of Solving Computational Problems
- Грокаем Алгоритмы. Иллюстрированное пособие для программистов и любопытствующих
- Algorithms by Jeff Erickson
- Data Structures and Algorithms in Python - книга по алгоритмам на Python
- Problem Solving with Algorithms and Data Structures using Python - еще одна книга по алгоритмам на Python
- Introduction to Algorithms, 3rd Edition (The MIT Press)
- Mathematics for Computer Science - book by Eric Lehman
- Структуры данных и алгоритмы в Java
- Разные полезности
- Algorithms and Data Structures Cheatsheet
- Algorithms and Complexity questions неожиданно сплошная теория
- Dynamic programming & Backtracking
- Dynamic Programming for Interviews великолепная книга собирающая в себе Top-Down, Bottom Up approaches. Дающая методологию разбора задачи.
- Dynamic Programming for Coding Interviews: A Bottom-Up approach to problem solving книга
- Динамическое программирование (видео лекции) - курс по динамическому программирования, отлично дает глубокое понимание этого подхода, а также возможность попрактиковаться на решении задач с их разбором
- Backtracking introduction - geeksforgeeks
- Grokking Dynamic Programming Patterns for Coding Interviews - платный курс по динамическом программированию
- Grokking Algorithms глава объясняющая KnapSack проблем.
- Dynamic Programming lecture #1 - Fibonacci, iteration vs recursion - Errichto дает качественное объяснение приемов Dynamic Programming
- Dynamic Programming lecture #2 - Coin change, double counting video
- Dynamic Programming Patterns карта задач.
- Перебор. Жадные алгоритмы. Динамическое программирование - видео теория для школьников от Владимира Гуровиц.
- What Is Dynamic Programming With Python Examples - объемная статья на тему динамического программирования с примерами
- Видео
- Introduction to Big O Notation and Time Complexity
- Плейлисты про решение задач на вайтборде
- Видео курс по алгоритмам от автора Cracking the coding interview
- Видео курс по структурам данных от автора Cracking the coding interview
- Sorting Algorithms (slower, grouped and ordered) - анимация 26 сортировок (нечто похожее)
- Back To Back SWE понравился этот канал. У парня хороший английский, он хорошо объясняет подходы к решению разных задач с описанием процесса решения, появления инсайтов
- WilliamFiset - серия видео о теории графов
- Списки видео: базовые алгоритмы и чуть сложнее базовых
- Видео разбор топ leetcode задач с ясным изложением на русском
- Разбор 75 основных типовых задач на Leetcode - доходчивое изложение на английском.
- Сайты: big-O, элементарные алгоритмы и подходы к ним.
- Wumbo.net - Wumbo is a math reference site for students
- Курсы
- Introduction to Discrete Mathematics for Computer Science - минимальный курс “все в одном” по дискретной математике. Покрывает минимум по важности математического доказательства, комбинаторике, теории вероятностей, теории графов, теории чисел и криптографии.
- Комбинаторика для начинающих - хороший вводной курс по комбинаторике. Очень доходчиво и наглядно показаны все основные комбинаторные величины.
- Теория вероятностей для начинающих - вводной курс по теории вероятностей.
- Теория графов - математический фундамент теории графов. Этот курс более ориентирован на именно “математику” нежели computer science.
- Книги
- Discrete Mathematics and Its Applications - лучшая книга по дискретной математике по многим критериям.
- Discrete Mathematics with Combinatorics - еще одна довольно популярная книга по дискретке.
- Applied Combinatorics - фундаментальный труд по прикладной комбинаторике. Продвинутый уровень.
- Invitation to Number Theory - очень легкое введение в теорию чисел.
- Number Theory and Its History - введение в теорию чисел с хорошим историческим очерком. Подойдет любителям разбавить скучные формулы каплей истории за этими формулами.
- An Introduction to the Theory of Numbers - хорошая книжка по теории чисел от известного британского математика. Используется как учебное пособие в китайских вышах.
- Elementary Number Theory and Its Application - фундаментальный труд по теории чисел.
- Introduction to Linear Algebra - один из полнейших курсов по линейной алгебре.
- Как стать Red coder (Grandmaster) on Codeforces
- E-Maxx Algorithms in English;
- Timus - High quality Online Judge with a lot of solutions on Github;
- Yaal (Yet another algorithm library) by Egor Kulikov - качественная библиотека на Java для олимпиад. Советую использовать в паре с Intellij IDEA плагином. Аналогичный плагин для С++ в CLion.
- Подготовка к ШАД. (Учиться можно бесплатно из любой точки мира, но нужно сдать сложный экзамен).
- Общие принципы
- Очередность Leetcode задач для новоприбывших.(чтобы меньше страдать) и (объяснение по какому принципу они фильтровались)
- A LeetCode Grinding Guide - cscareerquestions - обсуждение как правильно начинать решать задачи на литкоде.
- 14 шаблонов, которые помогут ответить на любой вопрос по коду на собеседовании Вопросы на собеседованиях часто (это “переписка” курса Grokking the Coding Interview: Patterns for Coding Questions который уже указан выше)
- Отдельные задачи
- Подборки задач
- https://www.interviewbit.com/courses/programming/ - подборка задач по темам от interviewbit
- List of Top 75 LeetCode Questions to Save Your Time
- Amazon Online Assessment Questions из них было Critical Routers, и Product Suggestions
- Amazon Final Interview Questions. SDE1
- Leetcode questions by likes/dislikes ratio
- Leetcode Patterns
- Видео
- Разное
-
Все сразу
- Grokking the System Design Interview в 99% в первую очередь вам посоветуют пройти курс (Grokking the System Design Interview - Part 3 )
- Grokking the Object Oriented Design Interview
- System-design-primer Популярный сборник разного по SDI
- System Design Interview Step By Step Guide. Youtube channel
- Database Internals: A Deep Dive into How Distributed Data Systems Work - книга говорят бомба типа data intensive
- Building Microservices: Designing Fine-Grained Systems: Newman, Sam: 9781491950357 - очень хорошая книга про разработку микросервисов, легко читается, много хороших практик
- Distributed Systems: Principles and Paradigms: Tanenbaum, Andrew S., van Steen, Maarten: 9780130888938 - хорошая популярная книга по распределенным системам, не могу сказать, что читается легко, но стоящая
- https://landing.google.com/sre/books/ не пугайтесь что про SRE, для SWE можно кой чего пропустить - но есть очень много примеров дизайнов, решений которые были приняты и почему, очень очень хорошее описание что такое load balancing например
- Introduction to modern network load balancing and proxying - Еще про load balancer, но это уже чуть подробней чем надо SWE обычно,
- NoSQL Databases: a Survey and Decision Guidance - сравнение и описание различных NoSQL систем. Отличие статьи в более практическом анализе - для каких задач, какой тип хранилища подойдет лучше.
- System Design Interview Video. Rate Limiting (local and distributed)
- Prepare for Your Google Interview: Systems Design неожиданно крутое новое видео по system design от Life at Google
- Object-Oriented Design - список вопросов с литкода
- Старые статьи с DOU о консенсус-протоколах: раз, два
- Raft. Объяснение RAFT на пальцах с красивыми диаграммками. Можете даже показать свой маме!
- Grokking the Mobile System Design interview - По мотивам систем дизайн собесов в ФБ и Гугл на мобильщика написал статейку.
- A Simple Framework For Mobile System Design Interviews - структурированный подход к прохождению систем дизайн интервью для iOS/Android разработчиков.
-
Видео
- Software Design Patterns and Principles (quick overview)
- Success in Tech - канал о подготовке к интервью, есть видео о дизайне
- System Design Interview канал по дизайн интервью лучше/популярней и понятней лекций по Raft/Paxos я не видел, а глубже наверно только статьи читать: Raft lecture, Paxos lecture
- System design interview questions - плейлист про дизайн интервью с канала Tushar Roy - Coding Made Simple
- https://www.codekarle.com/
-
Papers
- Cassandra.Можно погуглить разные описания систем. Поисковый запрос вида "BigTable paper" или "MapReduce paper".
-
Воркшопы
- Workshop от Google по non-abstract large systems design на примере Publish-Subscribe system
- Видео
- видео которое рекомендуют везде: Episode 07: Intro to Behavioural Interviews
- Тематический канал Дена Кройтора, много инфы и примеров по Amazon LP, FB, Netflix
- Почитать
- Behavioral Interview. Топики на эту тему на блаинде
- Cracking the Coding Interview pages 32-38
- The Situation-Behavior-Impact-Feedback Tool - From MindTools.com
- https://leetcode.com/explore/interview/card/leapai/
- Блог bar-raiser из Amazon об их LP: Interviewing at Amazon — Leadership Principles - Dave Anderson
- Amazon Behavioral questions. Leadership Principles. LP Тут ещё один товарищ из этого чата поучаствовал в эвенте, и у нас у обоих было одинаково: всё вопросы на LP & Behavior были слово в слово из этого списка
- Если это нетфликс или амазон там нужно читать их пейперы по кор вельюсам и быть готовы к вопросам показывающим как ты им соответствуешь.
- Что спрашивают на behavioral и system design интервью, или Как я попал в Facebook
- How to Negotiate Your Job Offer - Prof. Deepak Malhotra (Harvard Business School) Video
- Ten Rules for Negotiating a Job Offer
- Patrick McKenzie. Salary Negotiation: Make More Money, Be More Valued
- Salary Negotiation with Haseeb Qureshi
- How Not to Bomb Your Offer Negotiation
- How I negotiated a $300,000 offer in Silicon Valley
- Cracking the Tech Career: Insider Advice on Landing a Job at Google, Microsoft, Apple, or any Top Tech Company
- Во избежание конфликтов - не говорите своему работодателю что у вас офер. Скажите когда будет виза. Разница между офером и визой может достигать 12 месяцев.
- Сразу поговорите с рекрутером о том, чтобы его кто-то заменил в случае если он внезапно уйдет в отпуск на 2-3 недели - в Европе это любят. Тоже самое с Project manager.
- Будет Background check. Сразу подготовьте список всех работодателей и доказательство того, что вы там работали.
- Сразу подготовьте документы в электронном виде. Скан паспорта, загранпаспорта, для Украины (налоговый код, справка о не судимости), диплом. Пожалуйста, допишите для других стран снг
- Это все для того, чтобы сэкономить вам от 2 до 4 месяцев. Рекрутеры совсем не торопятся. И могут тянуть из вас документы по одному в неделю. Поэтому приготовьте все сразу.
- От Ларисы
- Видео
- Шаблоны
По вторникам и субботам в /r/cscareequestions создаются “Resume Advice” тредs, где можно получить фидбек. Телеграм канал для обсуждения резюме: resume_review Rooftop Slushie - платно
- Разное
- Linux Technical Interview Questions and Answers (Linux) - платный курс
- My Job Interview at Google Google SRE interview on SRE
- What happens when we hit URL in Browser?
- SYSADMIN. The Systems Engineering Side of Site Reliability Engineering
- SYSADMIN. Hiring Site Reliability Engineers
- https://github.com/mxssl/sre-interview-prep-guide
- Почитать
- Site Reliability Engineering книга
- Linux System Programming: Talking Directly To The Kernel And C Library
- Systems Performance: Enterprise and the Cloud, сайт автора http://www.brendangregg.com
- BPF Performance Tools (Addison-Wesley Professional Computing Series) снова http://www.brendangregg.com
- Operating Systems: Three Easy Pieces
- The Linux Programming Interface: A Linux and UNIX System Programming Handbook
- Grokking the Mobile System Design interview - По мотивам систем дизайн собесов в ФБ и Гугл на мобильщика написал статейку.
- Yet another mobile architectures comparison
- Mobile architecture optimization topics.
- The System Design Interview For Mobile Developers.
- Что спрашивают на behavioral и system design интервью, или Как я попал в Facebook.
- Pagination.
- A Simple Framework For Mobile System Design Interviews - структурированный подход к прохождению систем дизайн интервью для iOS/Android разработчиков.
- Разное
- https://blog.pramp.com/how-to-succeed-in-a-frontend-interview-d748cb073823?gi=1d9930d41bfb - Описание общего объема желательных знаний на позицию Frontend-инженера со ссылками где почитать. Ссылки из статьи на доп. Ресурсы:
- Frontend Job Interview Questions — The largest Github repository of frontend interview questions
- Cracking the Frontend Interview — A guide by Jonathan White, a Twitter engineer, on how to prepare for frontend interviews
- Frontend Developer Handbook 2018 — A guide on Frontend Development and interview preparation created by Frontend Masters
- Cracking the Frontend Coding Interview — An article by Alex Pattison, an engineer at Yola, on questions and answers for frontend interviews
- https://www.pramp.com/ - Тут есть возможность практиковаться в интервью по тематике Frontend
- http://gainlo.co - Платный ресурс для Mock-интервью в том числе по Frontend System Design. Дают развернутый фидбек.
- Большой док по фронтенд подготовке в FAANG
- System Design for Front End Engineers
- Leetcode-like портал, сфокусированный на фронтенде
- Summer 2020 Internships
- Статьи о стажировке в фаанг
- Стажировки в международных компаниях: как не завалить интервью и получить заветный оффер
- Как попасть на стажировку в Google
- Как попасть на 5 стажировок в ФААНГ
- Релокация в Сингапур: история украинского архитектора . Хорошая статья о жизни в Сингапуре, финансах и т.д.
- Как попасть в Кремниевую Долину. Video
- https://t.me/FbCovid - мини группа для обсуждения переезда в ФБ Лондон в текущей ситуации с вирусом. Для тех, кто сейчас находится в процессе обсуждения офера или уже подписал его, но еще не переехал из-за вируса
- https://t.me/canada_it - чатик айтишников по канаде + полезные чаты по Канаде https://canadakaknado.info/#chats
- https://relhut.com/visa-sponsors - список спонсоров Tier 2 визы, не только FAANG
- https://relhut.com/salary-calculator - калькурятор базовой зарплаты в ЮК для технических позиций
- Истории из жизни:
- Солянка
- Комбинаторика: основные правила и формулы .
- Видео на Khan Academy по комбинаторике (и потом второй блок, там же) - учит выводить комбинаторные формулы (permutations, combinations) на ходу, прикидыванием, а не запоминать их.
- Вся правда о собеседованиях в Google: за пределами NDA
- Amazon Banned Questions
- Amazon 1st round Interview questions (manager level)
- Levels.fyi: Compare salaries and career levels across companies
- Книги
- Introduction to Information Retrieval (на русском Вильямс книга Введение в информационный поиск) Сайты для изучения программирования
- Interview Practice - средние между leetcode и codewars
- https://www.codewars.com - для изучения языков, обилие задач и технических приемов
- Firecode.io, Coding Interview Answers and Trainer
- Список ресурсов, на которых можно найти рефералов (из какой-то статьи):
- Списки компаний по регионам
- Сайты для общения с рандомными людьми голос/текст/видео
- speaking24.com - если хочется пообщаться, можно вписать свой скайп или позвонить тем кто онлайн
- talkwithstranger.com - бесплатный чат на английском, много комнат разбитых на разные темы
- tohla.com - бесплатный чат (текст/голос/видео)
- omegle.com - бесплатный чат (текст/видео)
- free4talk.com - бесплатные видеочаты на разных языках, hangouts/и на самом сайте, группы по 2-10 человек
- strangermeetup.com - Stranger Meetup
- verbling.com - здесь когда то были бесплатные видеосозвоны в hangouts
- italki.com - платные преподаватели (от $3 в час) комьюнить бесплатно проверяет тексты, эссе, можно заводить друзей
- Разные соцсети для языкового обмена
- paltalk.com
- lang-8
- searchy.net
- interpals.net
- epals.com
- easylanguageexchange.com - Easy Language Exchange
- conversationexchange.com - Conversation Exchange
- languageforexchange.com - Language for exchange
- englishbaby.com
- Бесплатные тесты времена/грамматика/итд
- englisch-hilfen.de
- ego4u.com
- esl-lounge.com
- manythings.org
- correctenglish.ru
- examenglish.com - TOEFL reading test
- lengish.com
- Сайты для изучения языка в игровой форме
- Аудио книги
- loyalbooks.com - Audiobooks eBooks
- Za4itaika.ru - Free Public Domain Audiobooks
- Видео, тесты
- voanews.com - Voice of America Learning English
- bbc.co.uk - BBC Learning English
- perfect-english-grammar.com
- ted.com - TED Talks
- Переводчики, полезные штуки
- englishconversationquestions.com - рандомные вопросы для общения с людьми
- forvo.com - база произношений
- cambridge.org - Cambridge Dictionary
- multitran.com - переводчик multitran
- grammarly - проверка грамматики
- https://context.reverso.net/translation/ - перевод по контексту, во многих случаях намного полезней гугла переводчика
- https://fluent.express - проверка текста реальными людьми (профессиональными едиторами), платное но к примеру для проверки резюме может пригодится
- https://playphrase.me/ - пишешь фразу, сервис показывает отрывки фильмов с произношением этой фразы.