Header and the table of contents until optional items.
This commit is contained in:
		
							
								
								
									
										165
									
								
								README-ru.md
									
									
									
									
									
								
							
							
						
						
									
										165
									
								
								README-ru.md
									
									
									
									
									
								
							@@ -4,97 +4,100 @@
 | 
			
		||||
 | 
			
		||||
## Что это?
 | 
			
		||||
 | 
			
		||||
Это мой учебный план рассчитанный на несколько месяцев для веб-разарботчиков, не имеющих образования в CS и планирующих 
 | 
			
		||||
работать разработчиками программного обеспечения в компании Google. 
 | 
			
		||||
Это мой учебный план рассчитанный на несколько месяцев для веб-разработчиков, не имеющих образования в Computer Science (CS)
 | 
			
		||||
и планирующих работать инженерами-программистами (software engineer) в компании Google. 
 | 
			
		||||
 | 
			
		||||

 | 
			
		||||
 | 
			
		||||
This long list has been extracted and expanded from **Google's coaching notes**, so these are the things you need to know.
 | 
			
		||||
There are extra items I added at the bottom that may come up in the interview or be helpful in solving a problem. Many items are from
 | 
			
		||||
Steve Yegge's "[Get that job at Google](http://steve-yegge.blogspot.com/2008/03/get-that-job-at-google.html)" and are reflected
 | 
			
		||||
sometimes word-for-word in Google's coaching notes.
 | 
			
		||||
За основу учебного плана я взял список вопросов **Google's coaching notes** и значительно расширил его. Тут вы найдёте 
 | 
			
		||||
много полезных вещей, которые необходимо знать. Дополнительные вопросы я добавил в конец списка, их могут задавать на 
 | 
			
		||||
интервью, так же они могут быть полезны в решении повседневных задач. Некоторые пункты я взял из поста Стива Йеги (Steve Yegge) 
 | 
			
		||||
"[Получить работу в Google](http://steve-yegge.blogspot.com/2008/03/get-that-job-at-google.html)", а некоторые слово в слово 
 | 
			
		||||
соответствуют вопросам, разбираемых Google в их постах о подготовке.
 | 
			
		||||
 | 
			
		||||
I've pared down what you need to know from what Yegge recommends. I've altered Yegge's requirements 
 | 
			
		||||
from information received from my contact at Google. This is meant for **new software engineers** or those switching from 
 | 
			
		||||
software/web development to software engineering (where computer science knowledge is required). If you have 
 | 
			
		||||
many years of experience and are claiming many years of software engineering experience, expect a harder interview. 
 | 
			
		||||
[Read more here](https://googleyasheck.com/what-you-need-to-know-for-your-google-interview-and-what-you-dont/).
 | 
			
		||||
Я сократил тот объем знаний, который необходим, по сравнению с рекомендациями Йеги. Я изменил требования Йеги исходя
 | 
			
		||||
из той информации, которую мне предоставил мой знакомый из Google. Это важно для тех, кто сейчас еще **новички в 
 | 
			
		||||
разработке программного обеспечения** или являются веб-разработчиками и планируют стать инженерами-программистами 
 | 
			
		||||
(это та профессия где требуются знания в области CS). Если вы опытный разработчик, ожидайте что собеседование будет сложным. 
 | 
			
		||||
[Подробнее](https://googleyasheck.com/what-you-need-to-know-for-your-google-interview-and-what-you-dont/). 
 | 
			
		||||
 | 
			
		||||
If you have many years of software/web development experience, note that Google views software engineering as 
 | 
			
		||||
different from software/web development and they require computer science knowledge.
 | 
			
		||||
Если вы обладаете многолетним опытом разработки ПО, помните, что Google разделяет понятия инженер-программист и 
 | 
			
		||||
разработчик ПО/веб-разработчик. Первое требует знаний в области CS.
 | 
			
		||||
 | 
			
		||||
If you want to be a reliability engineer or systems engineer, study more from the optional list (networking, security).
 | 
			
		||||
Если вы хотите быть инженерами обеспечивающими надежность ПО или системными инженерами, то уделить внимание вопросом из
 | 
			
		||||
опционального списка(разделы сеть, безопасность).
 | 
			
		||||
 | 
			
		||||
---
 | 
			
		||||
 | 
			
		||||
## Table of Contents
 | 
			
		||||
## Содержание
 | 
			
		||||
 | 
			
		||||
- [Что это?](#what-is-it)
 | 
			
		||||
- [Почему нужно это использовать?](#why-use-it)
 | 
			
		||||
- [Как пользоваться](#how-to-use-it)
 | 
			
		||||
- [Получи гугловское настроение](#get-in-a-googley-mood)
 | 
			
		||||
- [Получил ли я работу?](#did-i-get-the-job)
 | 
			
		||||
- [Двигайся вместе со мной](#follow-along-with-me)
 | 
			
		||||
- [Не переживай о том, что ты не достаточно умный](#dont-feel-you-arent-smart-enough)
 | 
			
		||||
- [О Google](#about-google)
 | 
			
		||||
- [О видео ресурсах](#about-video-resources)
 | 
			
		||||
- [Процесс собеседования & Основное в подготовке к интервью](#interview-process--general-interview-prep)
 | 
			
		||||
- [Выберите один язык для собеседования](#pick-one-language-for-the-interview)
 | 
			
		||||
- [Список книг](#book-list)
 | 
			
		||||
- [Перед тем как ты начнешь](#before-you-get-started)
 | 
			
		||||
- [Что еще не охвачено](#what-you-wont-see-covered)
 | 
			
		||||
- [Необходимые знания](#prerequisite-knowledge)
 | 
			
		||||
- [План на день](#the-daily-plan)
 | 
			
		||||
- [Сложность алгоритмов / Big-O / Асимптотический анализ](#algorithmic-complexity--big-o--asymptotic-analysis)
 | 
			
		||||
- [Структуры данных](#data-structures)
 | 
			
		||||
    - [Массив](#arrays)
 | 
			
		||||
    - [Связанный список](#linked-lists)
 | 
			
		||||
    - [Стек](#stack)
 | 
			
		||||
    - [Очередь](#queue)
 | 
			
		||||
    - [Хэш-таблица](#hash-table)
 | 
			
		||||
- [Дополнительно](#more-knowledge)
 | 
			
		||||
    - [Двоичный поиск](#binary-search)
 | 
			
		||||
    - [Битовые операции](#bitwise-operations)
 | 
			
		||||
- [Деревья](#trees)
 | 
			
		||||
    - [Деревья](#trees---notes--background)
 | 
			
		||||
    - [Двоичное дерево поиска: BSTs](#binary-search-trees-bsts)
 | 
			
		||||
    - [Куча / Очередь с приоритетом / Двоичная куча](#heap--priority-queue--binary-heap)
 | 
			
		||||
    - Сбалансированные деревья поиска (основная идея, без деталей)
 | 
			
		||||
    - Обходы: прямой, симметричный, обратный, BFS, DFS
 | 
			
		||||
- [Сортировка](#sorting)
 | 
			
		||||
    - выбором
 | 
			
		||||
    - вставками
 | 
			
		||||
    - пирамидальная
 | 
			
		||||
    - быстрая
 | 
			
		||||
    - слиянием
 | 
			
		||||
- [Графы](#graphs)
 | 
			
		||||
    - ориентированные
 | 
			
		||||
    - неориентированные
 | 
			
		||||
    - матрица смежности
 | 
			
		||||
    - лист смежности
 | 
			
		||||
    - обходы: BFS, DFS
 | 
			
		||||
- [Еще больше знаний](#even-more-knowledge)
 | 
			
		||||
    - [Рекурсия](#recursion)
 | 
			
		||||
    - [Объектно-ориентированное программирование](#object-oriented-programming)
 | 
			
		||||
    - [Шаблоны проектирования](#design-patterns)
 | 
			
		||||
    - [Комбинаторика & Вероятность](#combinatorics-n-choose-k--probability)
 | 
			
		||||
    - [NP, NP-полные and Аппроксимирующие алгоритмы](#np-np-complete-and-approximation-algorithms)
 | 
			
		||||
    - [Кэш](#caches)
 | 
			
		||||
    - [Процессы и нити](#processes-and-threads)
 | 
			
		||||
    - [Статьи](#papers)
 | 
			
		||||
    - [Тестирование](#testing)
 | 
			
		||||
    - [Планирование](#scheduling)
 | 
			
		||||
    - [Реализация системных вызовов](#implement-system-routines)
 | 
			
		||||
    - [Поиск в строке & манипуляции](#string-searching--manipulations)
 | 
			
		||||
- [Проектирование систем, Масштабируемость, Обработка данных](#system-design-scalability-data-handling) (if you have 4+ years experience)
 | 
			
		||||
- [Финальный обзор](#final-review)
 | 
			
		||||
- [Практические вопросы по программированию](#coding-question-practice)
 | 
			
		||||
- [Упражнения по программированию](#coding-exerciseschallenges)
 | 
			
		||||
- [Перед собеседованием](#once-youre-closer-to-the-interview)
 | 
			
		||||
- [Ваше резюме](#your-resume)
 | 
			
		||||
- [О чем нужно думать на собеседовании](#be-thinking-of-for-when-the-interview-comes)
 | 
			
		||||
- [Вопросы к собеседующим](#have-questions-for-the-interviewer)
 | 
			
		||||
- [После того как вы получили работу](#once-youve-got-the-job)
 | 
			
		||||
 | 
			
		||||
- [What is it?](#what-is-it)
 | 
			
		||||
- [Why use it?](#why-use-it)
 | 
			
		||||
- [How to use it](#how-to-use-it)
 | 
			
		||||
- [Get in a Googley Mood](#get-in-a-googley-mood)
 | 
			
		||||
- [Did I Get the Job?](#did-i-get-the-job)
 | 
			
		||||
- [Follow Along with Me](#follow-along-with-me)
 | 
			
		||||
- [Don't feel you aren't smart enough](#dont-feel-you-arent-smart-enough)
 | 
			
		||||
- [About Google](#about-google)
 | 
			
		||||
- [About Video Resources](#about-video-resources)
 | 
			
		||||
- [Interview Process & General Interview Prep](#interview-process--general-interview-prep)
 | 
			
		||||
- [Pick One Language for the Interview](#pick-one-language-for-the-interview)
 | 
			
		||||
- [Book List](#book-list)
 | 
			
		||||
- [Before you Get Started](#before-you-get-started)
 | 
			
		||||
- [What you Won't See Covered](#what-you-wont-see-covered)
 | 
			
		||||
- [Prerequisite Knowledge](#prerequisite-knowledge)
 | 
			
		||||
- [The Daily Plan](#the-daily-plan)
 | 
			
		||||
- [Algorithmic complexity / Big-O / Asymptotic analysis](#algorithmic-complexity--big-o--asymptotic-analysis)
 | 
			
		||||
- [Data Structures](#data-structures)
 | 
			
		||||
    - [Arrays](#arrays)
 | 
			
		||||
    - [Linked Lists](#linked-lists)
 | 
			
		||||
    - [Stack](#stack)
 | 
			
		||||
    - [Queue](#queue)
 | 
			
		||||
    - [Hash table](#hash-table)
 | 
			
		||||
- [More Knowledge](#more-knowledge)
 | 
			
		||||
    - [Binary search](#binary-search)
 | 
			
		||||
    - [Bitwise operations](#bitwise-operations)
 | 
			
		||||
- [Trees](#trees)
 | 
			
		||||
    - [Trees - Notes & Background](#trees---notes--background)
 | 
			
		||||
    - [Binary search trees: BSTs](#binary-search-trees-bsts)
 | 
			
		||||
    - [Heap / Priority Queue / Binary Heap](#heap--priority-queue--binary-heap)
 | 
			
		||||
    - balanced search trees (general concept, not details)
 | 
			
		||||
    - traversals: preorder, inorder, postorder, BFS, DFS
 | 
			
		||||
- [Sorting](#sorting)
 | 
			
		||||
    - selection
 | 
			
		||||
    - insertion
 | 
			
		||||
    - heapsort
 | 
			
		||||
    - quicksort
 | 
			
		||||
    - merge sort
 | 
			
		||||
- [Graphs](#graphs)
 | 
			
		||||
    - directed
 | 
			
		||||
    - undirected
 | 
			
		||||
    - adjacency matrix
 | 
			
		||||
    - adjacency list
 | 
			
		||||
    - traversals: BFS, DFS
 | 
			
		||||
- [Even More Knowledge](#even-more-knowledge)
 | 
			
		||||
    - [Recursion](#recursion)
 | 
			
		||||
    - [Object-Oriented Programming](#object-oriented-programming)
 | 
			
		||||
    - [Design Patterns](#design-patterns)
 | 
			
		||||
    - [Combinatorics (n choose k) & Probability](#combinatorics-n-choose-k--probability)
 | 
			
		||||
    - [NP, NP-Complete and Approximation Algorithms](#np-np-complete-and-approximation-algorithms)
 | 
			
		||||
    - [Caches](#caches)
 | 
			
		||||
    - [Processes and Threads](#processes-and-threads)
 | 
			
		||||
    - [Papers](#papers)
 | 
			
		||||
    - [Testing](#testing)
 | 
			
		||||
    - [Scheduling](#scheduling)
 | 
			
		||||
    - [Implement system routines](#implement-system-routines)
 | 
			
		||||
    - [String searching & manipulations](#string-searching--manipulations)
 | 
			
		||||
- [System Design, Scalability, Data Handling](#system-design-scalability-data-handling) (if you have 4+ years experience)
 | 
			
		||||
- [Final Review](#final-review)
 | 
			
		||||
- [Coding Question Practice](#coding-question-practice)
 | 
			
		||||
- [Coding exercises/challenges](#coding-exerciseschallenges)
 | 
			
		||||
- [Once you're closer to the interview](#once-youre-closer-to-the-interview)
 | 
			
		||||
- [Your Resume](#your-resume)
 | 
			
		||||
- [Be thinking of for when the interview comes](#be-thinking-of-for-when-the-interview-comes)
 | 
			
		||||
- [Have questions for the interviewer](#have-questions-for-the-interviewer)
 | 
			
		||||
- [Once You've Got The Job](#once-youve-got-the-job)
 | 
			
		||||
 | 
			
		||||
---------------- Everything below this point is optional ----------------
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user