Как подготовиться к собеседованию программисту?
Если ищете работу в первый раз, нужно вложить достаточно сил в подготовку к собеседованию. Не только профессионалы в отрасли полностью игнорируют этот совет, но и вчерашние студенты. По сути, вы сдаете тест, поэтому не расслабляйтесь - это тоже работа. Теперь пришло время заполнить пробелы в знаниях и найти работу мечты.
Структуры данных
Откройте wikipedia и прочитайте страницы про каждую из структур данных несколько раз, затем напишите свою собственную реализацию на любимом языке программирования (это самая важная часть).- массивы;
- связный список;
- стек/очередь;
- деревья (АВЛ-дерево, двоичное дерево, двоичное дерево поиска, красно-черное дерево);
- куча;
- хэш-таблица;
- графы.
Алгоритмы
Необходимо изучить алгоритмы и попрактиковаться в их кодировании. Простое чтение кода, написанного кем-то другим, не эффективно. Откройте любимую IDE и начните писать код. Помните, что единственный способ найти пробелы в знаниях - написать код. Изучите все Big-O для алгоритмов и их самих.Не нужно досконально изучать все, но просмотрите и выучите пару пунктов:
- алгоритмы сортировки;
- обходы дерева;
- обходы - алгоритм Дейкстры, A *;
- префиксное дерево.
Заполнить пробелы
Здесь можно быть честными с самим собой. Есть длинный список вещей, которые вы не знаете. Но вы постоянно говорите себе, что все в порядке, потому что материал, который вы не знаете, на самом деле не важен. Вот список тем, которые действительно нужно знать:- написание кода - принципы стиля кода, его организации;
- биты и байты;
- как работает Интернет. Нужно знать, как работают сокеты, что такое TCP/IP, что такое HTTP на самом деле. Изучите сетевые уровни и то, за что они отвечают. Это звучит пугающе, это займет всего пару часов.
- базы данных. Изучите базовое моделирование SQL и данных, триггеры, представления, нормальные формы.
- узнайте немного о тестировании. Напишите код и протестируйте его. Что такое TDD?
- если всегда использовали Windows самое время попробовать Linux немного.
Comments
Post a Comment