@nioterzor

Широкий кругозор для профессионального программиста?

Предположим, что нужно пройти собеседование на разработчика в $super_cool_company на должность php разработчика (python/java тоже возможны).
Помимо самого языка нужно знать
1. Как устроен интерпретатор внутри (хотя бы поверхностно)
2. Как реализованы различные структуры данных
3. Разные парадигмы программирования
4. Использование разных БД
5. Способы отладки
6. Оптимизация кода, оптимизация БД
7. Сетевое взаимодействие (сокеты, TCP/UDP)
8. Блокировки (мьютексы/семафоры)
9. Многопоточное программирование, проблемы синхронизации
10. и т.д. и т.д.

Не уверен, есть ли нечто подобное в одной книге.
Посоветуйте, что почитать, чтобы расширить кругозор/вспомнить разные нюансы (не обязательно на основе PHP, подойдет C++/Java/Python)
Этакие справочники/шпаргалки как бы для подготовки к экзаменам, где можно освежить знания по многим основам всего, что так или иначе связано с программированием, чтобы не перечитывать по каждой теме тясячестраничные талмуды, потому что многое из указанного уже было прочитано/использовано/изучено, но вследствие редкого использования подзабылось.

Это не обязательно связано с трудоустройством. Хочется вспомнить/освежить в памяти многие основы. Что-то, возможно, помнится в некорректной интерпретации.
Мне доводилось писать на php/python/c/c++/js/perl (где-то больше, где-то меньше, с фреймворками и без), писать распределенные вычисления, оптимизировать код под определенные особенности платформы заниматься настройкой сетей, ip-телефонией, администрированием серверов, но часть знаний достаточно поверхностна для серьезной работы, хотя достаточна для написания работающих решений.
  • Вопрос задан
  • 1567 просмотров
Пригласить эксперта
Ответы на вопрос 4
  • AlexMaxTM
    @AlexMaxTM
    Поймите простую вещь, вы идете не экзамены сдавать, на собеседование. Бессмысленно читать ночь перед собеседованием и писать шпоры. В зачет пойдет только ваш реальный опыт, а не теоретические знания.
    Хотите список вопросов, на котором буксовали у меня люди на собеседовании?
    - Каким редактором вы пользуетесь? Какая версия, какие плагины стоят? Какая горячая клавиша для ... (Если человек буксует, значит он мало сидит за редактором).
    - Какую версию MySQL (или PostgreSQL) вы используете, в чем отличие от предыдущей версии?
    - В каких ситуациях необходимо использовать интерфейсы, но категорически нельзя использовать абстрактные классы. И наоборот, в каких ситуациях необходимо использовать абстрактные классы, но недопустимы интерфейсы, или трейды?
    - Даю листок бумаги и пишу длинное число 4923872788828228453. Даю задание, напишите регулярное выражение, чтобы разделить это число по три через пробел: 4 923 872 788 828 228 453. Число может быть произвольным. Если человек не в состоянии сделать это одним регулярным выражением, тогда предлагаю решить ему задачу любым другим способом, но на бумаге и без интернета. Просто интересно как он составит алгоритм. Задачки бывают разными, под рукой всегда было около пары десятков подобных примеров.

    Потому вы не сможете подготовиться к собеседованию, читая книги.
    Ответ написан
  • opium
    @opium
    Просто люблю качественно работать
    Блин уже лет наверно 15 все ушло в поисковики по любому вопросу узнать и почитать, меня даже в школе учли а поисковиком в 2000 году.
    Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через TM ID
Похожие вопросы
Вакансии с Моего Круга Все вакансии
Заказы с Фрилансим Все заказы