Доброе утро!
По роду занятий мне приходится часто проводить собеседования со слабо подготовленными претендентами. Речь идет об интервью на тренинги по .NET и Java. Чтобы понять масштаб бедствия, поясню — за семь лет проведения собеседований я лично поговорил приблизительно с 500 претендентами на тренинги. И, к моему сожалению, со многими из приходящих на собеседование даже поговорить не о чем. Так сказать, отсутствуют общие интересы. :) А ведь речь на собеседовании идет не о литературе...Более того, мне кажется, что за эти семь лет уровень собеседующихся практически не изменился, хотя знания становятся все доступнее и доступнее.
Основная проблема — неготовность к собеседованию — на мой взгляд, вытекает из отсутствия четкого понимания у потенциального слушателя тренинга того, о чем его будут спрашивать на собеседовании, ведь часто это собеседование является самым первым в их карьере. Поэтому я создал короткий, но емкий план (чек-лист), следуя которому можно овладеть азами специальности и без особых сложностей пройти собеседование для дальнейшего обучения уже под руководством тренера. Данный список я позволил себе обозначить как ver 1.0, планируя его обновление и «допиливание» через определенные промежутки времени. Я буду очень рад, если вы, уважаемые коллеги, в комментариях также поделитесь с новичками полезными ссылками.
Я сознательно не включал в данный план подготовки различного рода мультимедийные материалы а-ля видеозаписи курсов, т.к. не вижу в них особой практической пользы и считаю, что просто хорошую книгу не заменит даже отличный видеокурс. Для достойной подготовки фактически нужно изучить весь приведенный ниже материал, выбрав один из двух разделов — основы Java или основы C# — в зависимости от того, какую специализацию вы предпочтете.
Что нужно знать |
Где найти |
Основы алгоритмизации и программирования | |
1. виды алгоритмов 2. алгоритмы обработки массивов 3. основные структуры данных.
|
В.Д. Колдаев «Основы алгоритмизации и программирования: Учебное пособие» |
Основы ООП | |
1. объекты 2. классы 3. инкапсуляция 4. наследование 5. полиморфизм |
В.В. Мухортов, В.Ю. Рылов «Объектно-ориентированное программирование, анализ и дизайн» Тимоти Бадд: «Объектно-ориентированное программирование в действии» И еще немного |
Основы JAVA | |
1. типы 2. операторы 3. объектно-ориентированное программирование на Java
|
Герберт Шилдт Java. Полное руководство
|
Основы C# | |
1. типы 2. операторы 3. объектно-ориентированное программирование на C#
|
Язык программирования C# 5.0 и платформа .NET 4.5
|
Основы БД | |
1. базовые понятия реляционных баз данных 2. схема базы данных (отношения, связи, домен, кортеж) 3. ключи и индексы 4. язык SQL 5. средства манипулирования данными. Запросы на выборку, добавление, изменение, удаление данных (SELECT, INSERT, UPDATE, DELETE...) |
С.Д. Кузнецов «Основы современных баз данных» Т. Коннолли, К. Бегг «Базы данных: проектирование, реализация и сопровождение»
|
Основы HTML | |
1. структура HTML документа 2. основные теги 3. работа с ссылками и с изображениями 4. списки 5. таблицы |
Елена Полонская «Язык HTML. Самоучитель»
|
Основы CSS | |
1. способы добавления стилей на страницу 2. синтаксис 3. селекторы 4. основные свойства стилей
|
Способы добавления стилей на страницу
|
Основы написания качественного кода | |
1. основы разработки ПО 2. высокачественный код 3. переменные 4. операторы |
Стив Макконнелл «Совершенный код»
|
Дерзайте! Читайте! И тогда нам будет о чем поговорить на собеседовании.
P.S.: Хочу выразить отдельную благодарность Денису Шибеко (Junior Software Engineer) и Антону Ляшенко (Software Engineer), план которых для подготовки по Java был взят за основу, дополнен мной разделом по C# и по основам написания качественного кода, а также слегка переработан.
Релоцировались? Теперь вы можете комментировать без верификации аккаунта.