• С чего начать?

    EvilsInterrupt
    @EvilsInterrupt
    System programming, Reversing Engineering, C++
    Еще рекомендую развивать навыки решения задач. Это если абстрактно, а если предметно, то рекомендую оглядеться вокруг себя на знакомых\друзей\коллег\родственников или еще кого и увидеть того кого Вы уважаете за то что он может решить почти любую задачу.
    Дело в том, что получает очень много тот, да и живет хорошо, кто может решать задачи и решать правильно, эффективно и с меньшими потерями как финансовыми так и временными.

    Мне сложно посоветовать книгу по развитию таких навыков, но такие навыки нужно прокачивать регулярно.
    Ответ написан
    Комментировать
  • С чего начать?

    TheHorse
    @TheHorse
    Нет, не могли бы. Не ссылочки вам нужны, а книги. Предпочтения по языкам/направлениям есть?
    Фундаментальные алгоритмы — Т. Кормен «Алгоритмы. Построение и анализ.»
    Ответ написан
    5 комментариев
  • Вопрос работодателям: какое ваше отношение к такой форме резюме?

    @LayneBuchyn
    Я думаю, что один из написавших комментарии выше был прав: Вы не хотите тратить свое время на те конторы, для которых такая фривольность непозволительна. И я с Вами в этом согласен на 300%.
    Мне недавно предложили прислать резюме в одну известную контору (я был заинтересован в интересных предложениях на будущее после окончания текущего проекта, который я выполняю, работая единолично на постоянной основе). На текущей работе я привык к тому, что я имею достаточную степень свободы как в выборе технологий разработки, изучения нового, принятия решений etc., так и в трудовом распорядке. Благодаря этому за очень короткое время (меньше года) я научился столь многому, что обогнал многих знакомых программистов, у которых опыта в разы больше. Дело в том, что я изначально не пошел по пути «дресированного» программиста, за которого решают, что и как ему делать, как быстро развиваться и сколь серьезные задачи ему доверять. У меня есть проект — и я понесу полную ответственность, если за нужное время не освою всего, что мне нужно знать, и не применю эти знания. Это воспитало целеустремленность, ускоренное развитие и вообще дало только позитивные результаты — я люблю сво работу, ЧСВ растет, задачи выполняются, польза как мне, так и работодателю — ведь зарплату мне не повышают с такой же скоростью, с какой я расту, но в то же время я не брошу проект, и не уйду на ту работу, в которой степень свободы будет меньшей. Как говорил О-Шо: «Все, что дает вам свободу — правильно. Все что отбирает ее — нет.».
    Так вот: я написал вот такое фривольное резюме (очень похожее на Ваше, только лет мне меньше, соответственно поменьше пунктов в опыте работы), и получил ответ, в котором было сказано, что мои зарплатные ожидания не соответствуют небольшому и «невнятному» опыту работы, непрофильному образованию, да и «резюме какое-то странное». Соответственно, благодаря такому фривольному резюме я сразу отсеял для себя плохую вакансию и сохранил время, которое потратил бы на собеседование. Ведь под «невнятным» опытом подразумевалось то, что я не писал как «дресированный программист» все что скажут, а сам принимал решение, и в одиночку реализовывал довольно крупные проекты, сам думал, учился сам и у коллег, ТВОРИЛ. Исчисление опыта годами работает только для «дресированных», ведь разные люди учатся и набираются опыта с разной скоростью, в том числе многое зависит от проектов, за которые человек брался и выполнял. привязка к профильному образованию — тоже смешна, ведь многие мои знакомые программисты с профильным образованием намного менее компетентны, имхо все знают качество нашего IT-образования.
    Наверное я зря расписал свою историю, ведь разговор не обо мне, но я говорил это к тому, что мораль сией истории такова: благодаря такому резюме Вы отсеете тех работодателей, которые по определению вам не подходят, отсеете все скучные говноконторки, в которых не дают творить. И это хорошо. А хороший работодатель обязательно обратит внимание на такое резюме, и думаю скоро Вы сами это увидите ;)
    Ответ написан
    4 комментария
  • Вопрос работодателям: какое ваше отношение к такой форме резюме?

    @edogs
    Наиболее сильно резануло это
    Полное непонимание и неприятие подхода советской школы, когда квалификацию определяют по количеству выученных наизусть функций языка.
    Это не подход советской школы, это подход человека не любящего нанимать «динамично и быстро обучающихся сотрудников без опыта».
    Когда мы видим в резюме фразу вида «функций не знаю, но есть же мануал», то сразу перед глазами встает образ начинающего фрилансера, который по каждому поводу будет листать документацию (убивая на это 50% времени) + не будет знать особенностей работы этих функций (в нештатных ситуациях и по потреблению памяти и по скорости) + минимум 10% штатных функций будет реализовывать своим велосипедом (т.к. не знал о их существовании).
    Плюс опять же, нереально профессионально и долго работать с языком и не знать функций… нас удивляют люди, которые даже бесплатный тест по php из 10 вопросов пройти не могут.
    А дебаг ошибок в текущем продукте? Если человек не помнит наизусть порядок аргументов в функции, как он сходу поймет что предыдущий прогер ошибся написав file_put_contents('content of file','name of file')? А у опытного и в теме — это будет просто резью в глазах, сразу заметно и не надо будет проверять и дебажить тонну кода.
    Мы когда начинали работать — тоже думали что опыт это не важно, главное знать программирование, поэтому понимаем Вашу позицию… просто не разделяем ее:) Понимание важности опыта приходит только с опытом.

    p.s.: вот еще почти в эту же тему habrahabr.ru/blogs/gtd/136291/#comment_4533538
    Ответ написан
    6 комментариев
  • Вопрос работодателям: какое ваше отношение к такой форме резюме?

    Мне очень понравилось, моя реакция — если бы были вакансии, как минимум пригласил бы на очную встречу.
    Ответ написан
    Комментировать
  • Комбинаторные алгоритмы

    @Ano
    Вложенные циклы, конечно, эквивалентны, но на python идеологически правильным будет

    import itertools

    itertools.product( ('1', '2', '3'), repeat=6)
    Ответ написан
    Комментировать
  • Комбинаторные алгоритмы

    difiso
    @difiso
    В параллельной вселенной я космонавт
    Относительно PPS. Посчитали вы не правильно. Количество таких комбинаций 3^6 = 729 — троичная система счисления с шестью позициями.

    Если говорить только про кубики, то не 729, а меньше, потому как одни комбинации могут получаться из других путем простого поворота.
    Ответ написан
    1 комментарий
  • Посоветуйте книги про Project Management

    @lecter
    Для поверхностного обзора PM в IT области рекомендую Лекции по управлению программными проектами Сергея Архипенкова.
    Общее направление — PMBoK, но читать полностью не рекомендую, смысла мало — это скорее настольная книга, справочник. Лучше раздобыть книжку от Rita Mulcahy по подготовке к PMP, довольно подробно все расписывает. Дальше направлений много, для IT неплохо познакомиться с разными методологиями: agile, rup и т.д.

    Ну и плюсую коммент от ghostwriter.
    Ответ написан
    1 комментарий
  • Что должен знать настоящий программист?

    @Jazzist
    Приходилось общаться с огромным количеством коллег. Для себя разработал некоторый тест — в процессе общения выявляю, знает ли товарищ программирование или нет. Большинство — немного ориентируются в каком-то языке, но с программированием, как таковым, не знакомы. Разумеется, они отсеиваются.

    Что интересно — изучить программирование несложно. Помогут википедия, куча литературы, снаружи злые, но добрые внутри учителя на многочисленнейших форумах…
    Ответ написан
    Комментировать
  • Что должен знать настоящий программист?

    epic45
    @epic45
    Вот эта страница в свое время помогла мне разобраться в том, что я знаю и что не знаю:
    Programmer Competency Matrix
    Ответ написан
    1 комментарий
  • Что должен знать настоящий программист?

    Профессиональный программист должен знать:

    — Основные алгоритмы, дабы не придумывать «велосипеды с квадратными колёсами»;

    — Теорию БД и SQL, без них никуда. Все серьёзные проекты используют БД;

    — Структуру и функционал системы, в которой работает программист. Он должен знать как и по каким правилам отдельные элементы системы взаимодействуют друг с другом. Под системой понимается не только язык программирования, но область приложения, которая может быть не связана с программированием. Пример, профессиональный программист АБС должен знать бухгалтерию кредитных организаций, как это не звучит дико.
    Ответ написан
    6 комментариев
  • Что должен знать настоящий программист?

    javax
    @javax
    Software Architect, Java Developer since 1996
    Основные структуры данных — как устроены и как использовать. И когда.
    Работа с соурс контролем и учетом багов.
    Системы билда.
    Регулярно читать статьи по своей тебе и близким темам.
    Ответ написан
    Комментировать
  • Что должен знать настоящий программист?

    AlexXYZ
    @AlexXYZ
    O Keep Clear O
    Настоящий программист должен знать достаточно, чтобы пройти собеседование ;) Шучу, конечно. С такого вопроса начинаются священные войны. «Что должен знать программист?» Да ещё и настоящий?



    Предлагаю зайти с другой стороны — а чего не должен знать настоящий программист? Эйншейн играл на скрипке (хотя я и не слышал) и хоть это и не относилось к физике, но и не помешало ему стать известным. Думаю, что ответ на вопрос надо искать не в перечислении знаний, относящихся к программированию. Так сказать ответ на вопрос лежит не здесь и не сейчас. В любой работе важно терпение и труд. И не только в профильной области. Готовься к тому, что надо будет работать по 12-14-16 часов в сутки возможно и не один год. Почти на износ, пока «догонишь» острие прогресса и поймёшь смысл поговорки «нужно очень быстро бежать, чтобы оставаться на месте, но чтобы двигаться вперёд надо бежать ещё быстрее». Пройдёт некоторое время и ответ на этот вопрос тебе не понадобиться, т.к. настоящие программисты, а точнее профессионалы, уже ответили себе на этот вопрос ;) Удачи.
    Ответ написан
    Комментировать
  • Что должен знать настоящий программист?

    savant
    @savant
    Сильно зависит от языка. Если пишешь на С — будь добр знать стратегии управления памятью, врубаться в арифметику указателей, помнить про выравнивание данных и подобные вещи.

    Если Java/C# — то паттерны проектирования, тонны библиотек для этих языков и ещё кучу всего.

    Если С++ то всё вышеперечисленное

    Если функциональщина — то лямбда счисление, замыкания, что там ещё есть…

    В идеале — всё вышеперечисленное и умение выбирать инструмент соответствующий задаче.

    Как-то так.
    Ответ написан
    9 комментариев
  • Указываете ли вы в своем резюме ссылки на свои профили на тематических сайтах (хабр, stackoverflow.com и т.д.)?

    JeanLouis
    @JeanLouis
    В резюме нужно указывать ссылки на пуликации по теме. Поэтому смело вставляйте ссылки на конкретные статьи на хабре. Указывать профайл, по-моему, как-то глупо и по-детски.
    Ответ написан
    Комментировать