Ответы пользователя по тегу Карьера в IT
  • Компьютерная Безопасность или КН -на что стоит идти?

    barmaley_exe
    @barmaley_exe
    Не знаю, чему учат на КБ, но в УрФУ есть Хакердом, где можно узнать всё самое важное, связанное с информационной безопасностью.

    А вообще, спрашивайте у студентов самого вуза, тут спрашивать бесполезно.
    Ответ написан
    Комментировать
  • Как найти студенту работу на лето за границей?

    barmaley_exe
    @barmaley_exe
    Не слушайте kazmiruk, он не в теме.

    В Штатах существует J1 виза, специально предназначенная для "обмена опытом" и не являющаяся dual-intent, т.е. подразумевается, что после некоторого срока Вы США покинете и у Вас даже в мыслях нет остаться там (иначе визу могут не дать).

    Многие Все приличные IT-компании организуют стажировки для студентов, привозя их на пару месяцев летом по этой самой J1 визе. И да, они заморачиваются не только с визами, но и с жильём, перелётом и прочим. Да и платят прилично. Разумеется, желающих постажироваться в том же Гугле гораздо больше, чем они способны нанять (хотя, я уверен, за лето через них проходит не одна сотня студентов) – тут нужно хорошо себя проявить на собеседовании, да и компания может постесняться Вашего статуса младшекурсника. Тем не менее, это реально, на Хабре Мегамозге (?) есть истории успеха.

    В этом году уже поздно куда-то дёргаться, поскольку процесс оформления всего вот этого небыстрый, обычно собеседования заканчиваются где-то в феврале-марте.

    P.S. Штатами всё не ограничивается, тот же Гугл, например, возит стажёров и в Европу, и, скажем, Японию.
    Ответ написан
    Комментировать
  • Прикладная математика как второе высшее для программиста?

    barmaley_exe
    @barmaley_exe
    При желании всё можно и самостоятельно освоить (учебников, лекций, курсов и ресурсов в сети навалом). Что касается взаимодействия с преподавателем, у которого якобы можно спросить что-нибудь, то с этим в интернете уж тем более нет никаких проблем, есть же math.stackexchange.com, например. Однако, этот путь прост лишь на словах, на практике требуется недюжая организованность и самоконтроль. Тем не менее, это возможно.

    А теперь об очном обучении в вузе (о заочном ничего не знаю)

    Если есть желание и возможность, то почему бы и нет? Некоторые разделы математики вроде дискретной математики, линейной алгебры, теории вероятности и статистики довольно полезны программисту. Особенно, в области анализа данных, например.
    С другой стороны, далеко не вся математика будет полезной. Конкретные разделы не приведу, поскольку это зависит от того, чем Вы в итоге будете заниматься. Однако, маловероятно, что все изучаемые дисциплины будут одинаково полезны. Отсюда ощущение, что математики изучено гораздо больше, чем нужно, что отчасти правда — чтобы хорошо закрепить базу нужно не только нарешать задачек, но и понять, как она взаимодействует с другими областями.

    Если интересно применение математики к программированию, то советую ориентироваться на программы, явно упоминающие информатику / computer science. Конечно, любая прикладная математика в настоящее время делается с применением компьютеров, но где-то это лишь инструмент для обсчёта, допустим, сложного дифференциального уравнения, а где-то математика, наоборот, является инструментом для решения программистской задачи (рекомендации в онлайн магазине, например).

    Ну и, вообще говоря, многое зависит от вуза. Идти в первый попавшийся я бы не советовал, а приличных мало, большинство их в Москве / Питере.

    Возьмут ли, если ты только специалист, да еще и отчислялся?
    А какие могут быть проблемы? Насколько я знаю, в России только одно ВО оплачивается государством, т.е. придётся выложить денег за обучение. Ну а коль уж Вы платите, то оснований не взять Вас я не вижу :-)

    А ещё тут есть такая лазейка: Российская система высшего образования сейчас потихоньку переходит на болонскую систему образования, выражающуюся в 4 годах бакалавриата + 2 года магистратуры. Насколько я знаю, специалисты прошлых годов выпуска имеют право на поступление в магистратуру на бюджетной основе. Кажется, такая схема даже лучше: 4 года — довольно значительное вложение времени, а 2 — уже реальнее.

    Возможно ли свободное посещение лекций и лучше ли это?
    Просто прослушивание лекций бесполезно чуть более, чем полностью. Нужно решать задачи, без этого никак.
    Ответ написан
    Комментировать
  • Каков необходимый минимум знаний для junior'а/стажера (с++) и где найти работу студенту?

    barmaley_exe
    @barmaley_exe
    EMC интересуется программистами с мат-меха. И позиции C++ стажёров у них бывают.

    Знать надо алгоритмы
    • Структуры данных: сбалансированные (и не только) деревья, хеш-таблицы, очереди с приоритетами и без, списки. Знать, конечно, не в теории, а уметь работать с ними
    • Графы: как минимум обходы в ширину и глубину. А так — поиск путей, минимальные остовные деревья,
    • Сортировки: quicksort, heapsort, mergesort, а так же какие-нибудь линейные вроде сортировки подсчётом и цифровой сортировки
    • Чем больше — тем лучше


    Для всех алгоритмов нужно знать и уметь обосновать их сложность (как по времени, так и по памяти) в терминах O-большого.

    C++, разумеется, предполагается знать прилично:
    • владение стандартной библиотекой (не будете же Вы raw pointer'ы в продуктовом коде использовать)
    • ООП
    • шаблонами
    • идиомами (RAII, pimpl, etc) в довесок к паттернам проектирования
    • Плюсом будет опыт работы с boost'ом.

    Помимо этого надо иметь представление о сетях и многопоточном программировании, а ещё уметь организовать процесс разработки, т.е. пользоваться системой контроля версий (SVN, GIT, Mercurial), инструментами для сборки (make / cmake / etc), отладчиками (gdb, lldb, например) и другими полезными тулами (valgrind, gprof, gconv, например), но это уже менее критично. Вообще, знакомство с Linux'ом и экосистемой разработки в нём будет плюсом.

    Ну и раньше третьего курса, как уже сказали, работать не рекомендуется.

    А ещё можно податься в Яндекс, Oracle (у них не только Java, но бывает и C++, не знаю, есть ли соответствующие позиции для студентов) и Intel (насколько я знаю, на текущий момент в Питере позиций нет, только в Нижнем и Москве). Гугл, как известно, из России уехал, а JetBrains, кажется, в C++ разработчиках не нуждается.
    Есть ещё куча других компаний поменьше, но их Вы найдёте сами.

    Ну и почитайте другие материалы на эту тему: [1], [2]

    P.S. Оценки в зачётке никого не волнуют. Если Вы только не собираетесь поступать в Computer Science Center, например. Или магистратуру СПбАУ.
    Ответ написан
    3 комментария
  • Есть ли смысл в изучении новых (совсем молодых) инструментов и языков программирования и какие у них перспективы?

    barmaley_exe
    @barmaley_exe
    Как справедливо заметили выше, Python и Ruby существуют уже 20+ лет, так что популярность они набрали уже давно.

    Go, Dart, Rust, D, etc интересны для изучения в целях расширения кругозора, но "в продакшен" не годятся: за 5 лет обширным сообществом не обзаведёшься, а, значит, ни выбора в плане библиотек, ни профессиональных кадров. Конечно, могут существовать отдельные проекты, исповедующие эти языки, но таких меньшинство.

    В последнее время многие прыгают вокруг JavaScript'а: сначала его перенесли на сервер (на самом деле, это сделали задолго до Node.JS, но не взлетело), а потом стали использовать чуть ли всюду (в win8, например, или PhoneGap). Но JS'у повезло иметь довольно больше коммьюнити на момент разгара этого хайпа, потому и понеслось.

    Выберите что-то из Python, Ruby, JS и разберитесь в этом (не столько в самом языке, сколько в его экосистеме, т.е. библиотеках, фреймворках и паттернах). Будет нужно — разберётесь в другом языке с его экосистемой. Идеи везде одни и те же, отличается только синтаксический сахар.
    Ответ написан
    Комментировать
  • Смотрят ли работодатели на степень кандидата наук?

    barmaley_exe
    @barmaley_exe
    Тут недавно был пост по теме, вызвавший обширное обсуждение.
    Ответ написан
    1 комментарий