“Выигрышные” собеседования по OO-программированию с опытом работы сисадмином / Perl / Linux?[закрыто]

StackOverflow https://stackoverflow.com/questions/68548

  •  09-06-2019
  •  | 
  •  

Вопрос

Я изучаю программную инженерию в Монреале.За последние 3 года у меня было несколько стажировок (раз в год).Первые две (в одной компании) были в основном заданиями системного администратора, но мне удалось поработать с несколькими программами на Perl (в основном, анализ лог-файлов и генерация статистики).

Другая моя стажировка была в области информационной безопасности.Я создал огромный CGI-скрипт на Perl для анализа времени, проведенного пользователями в Интернете.

Дело в том, что я действительно хочу заниматься программированием, но мои стажировки были в основном заданиями системных администраторов с некоторым программированием (из-за моего предыдущего опыта работы с Linux и UNIX).

Этой зимой у меня еще одна стажировка, однако я бы хотел, чтобы она проходила в области OO-программирования и SW-инженерии.

У меня есть опыт системного администрирования, но я довольно хорошо знаю OO, благодаря моим курсам в колледже и проектам (C ++, Java, VB.NET, ASP.NET, но, к сожалению, не C # : ( ).

Мой вопрос заключается в следующем :как я могу конкурировать на собеседованиях, не имея предыдущего опыта работы в области OO (хотя я создаю некоторые проекты на Java, Swing и т.д. И прямо сейчас изучаю JSP), с другими студентами, имеющими опыт OO на предыдущих стажировках?

Какими должны быть мои "продающие моменты"?Я считаю себя неплохим программистом, но мои предыдущие собеседования прошли неудачно из-за отсутствия опыта.На самом деле, прошлой зимой я прошел стажировку в области системного администрирования, с тех пор как... ну.....это мое прошлое!

Есть какие-нибудь советы о том, как убедить потенциального работодателя в том, что я идеальный кандидат, несмотря на отсутствие у меня профессионального опыта (но много личных знаний (и интереса))?

Спасибо,

Гийом.

[ПРАВИТЬ]

Спасибо вам всем за вашу поддержку!

Я еще не закончила школу ;Я все еще студентка очной формы обучения!Моя университетская программа направлена на сотрудничество :Мне нужно пройти 3 стажировки, чтобы получить диплом.

Позвольте мне кратко объяснить свою предысторию :этой зимой у меня будет 4-я стажировка.

Мои первые два были, когда я учился в CÉGEP, квебекских школах после окончания средней школы, но довузовской подготовки.

Первое из них было прагматично предоставлено мне ЧЕГЕПОМ :позвонил работодатель, который искал кого-то, разбирающегося в системном администрировании Linux.Я идеально подходил для этой работы, поскольку был единственным учеником, который знал Linux за пределами школы.Мое собеседование даже не было настоящим, поскольку все детали были обсуждены между моей школой и работодателем :Я знал, что меня наняли, еще до того, как прошел собеседование.

Второй был в той же компании, год спустя, так как мой первый очень понравился.

Затем я приехал в свой университет, где каждый студент обязан пройти 3 стажировки, чтобы получить свой диплом.Не имея реального опыта прохождения собеседований по информатике (с тех пор, как мне "подарили" мою первую стажировку), я допустил несколько промахов при проведении собеседований на вакансии OO.Наконец-то мне удалось пройти собеседование на должность системного администратора / программиста на Perl в Bombardier Aerospace.

Моя стажировка прошла хорошо, но теперь я хочу настоящую работу по разработке программного обеспечения.У всех моих знакомых был такой прошлой зимой, а это значит, что я в невыгодном положении с точки зрения опыта.

Тем не менее, у меня есть опыт программирования.Вся моя стажировка требовала от меня значительного объема программирования, особенно на Perl.Мои навыки работы с Perl довольно хороши, и мне удалось разработать несколько хороших инструментов для обеих компаний, в которых я работал.Я решил реальные проблемы, которых не было в школе (например, как эффективно анализировать файлы журналов объемом 5 ГБ при максимально низком использовании памяти).

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

В настоящее время я работаю над личным проектом на Java, который представляет собой небольшой редактор классов UML.Итак, мне приходится иметь дело с фреймворком Swing, слушателями, архитектурой MVC и т.д.Это не такой масштабный проект, как то, что делается в "реальном мире", но это интересный проект, и я получаю огромное удовольствие, занимаясь им, и если я смогу продвинуть его достаточно далеко в следующем месяце, я, вероятно, подключусь к SourceForge.В то же время я изучаю JSP.

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

В любом случае, спасибо вам!

Это было полезно?

Решение

без обид, но из вашего описания может показаться, что вы на самом деле не подходите для "настоящей" работы по ОО-программированию.Академические занятия - хорошее введение в язык, но они не заменяют решения реальных проблем с непостоянными сроками, привередливыми пользователями, придирчивыми менеджерами и так далее ;-)

это оставляет три варианта:

  1. присоединяйтесь к проекту с открытым исходным кодом, который использует OO и язык, который вы знаете, и внесите в него значительный вклад.Это обеспечит аналог реального опыта программирования [но не реального опыта работы] и мочь помочь вам получить работу программиста через год или два

  2. или подайте заявку на работу по ОО-программированию начального уровня и произведите неизгладимое впечатление на интервьюера своими коммуникативными навыками, заразительным энтузиазмом, стремлением учиться, преданностью клиенту / пользователю / чему угодно и т.д.Другими словами, представляйте и продавайте себя правдиво, но как "полный пакет", нуждающийся только в возможности взорваться.

    • Не расстраивайтесь, если вам часто отказывают
    • не устраивайтесь на работу, которая вам на самом деле не нужна
    • рассчитывайте остаться на этой работе по крайней мере на год, если не на два или три, чтобы по-настоящему научиться программировать в неакадемической среде
  3. начните свой собственный бизнес в качестве консультанта, программиста, фрилансера и / или разрабатывайте продукты и учитесь в своем собственном темпе.Это рискованно вне школы, менее рискованно в школе, и если вы окажетесь в незанятой нише, может оказаться весьма прибыльным

Другие советы

Что ж, единственное место, где можно получить немедленный, документированный опыт, - это проекты с открытым исходным кодом.Присоединяйтесь к проекту или начните новый.Помощь с документацией по проектам OSS (работодатели были бы рады это увидеть).Помощь в написании модульных тестов, внесение исправлений и т.д.И чем раньше вы начнете, тем лучше.

Опыт работы с открытым исходным кодом - это хорошо, и он показывает уровень преданности разработке и языку, на котором вы работаете.

Удачи вам

Способности и энтузиазм помогут вам пройти долгий путь.Если вы можете отвечать на вопросы собеседования, справляться с проблемами программирования и у вас есть личные проекты, над которыми вы работаете, недостаток опыта не должен вас слишком сильно сдерживать.

Однако убедитесь, что вы правильно сформулировали вопросы.Если у вас нет опыта, вы должны хорошо знать свое дело, чтобы компенсировать это.

Обязательно уделяйте особое внимание побочным проектам.Если я беру интервью у кого-то, кто любит проводить свободное время дома за программированием, он получает много бонусных баллов.

Во-первых, я всегда следую одной вещи, которая никогда не подводила меня неправильно, - это честность.Если вы чего-то не знаете, просто скажите "Я не знаю".Это так важно, когда дело доходит до интервью с программистами, и за этим очень легко следить.

Затем найдите время, чтобы начать и / или принять участие в некоторых проектах с открытым исходным кодом.Сказать, что вы работали над проектом с открытым исходным кодом, говорит о многом.Во-первых, это показывает, что вы можете использовать код других людей и имеете решимость работать совместно с другими людьми в сообществе программистов.Это имеет большое значение.Я сталкивался с работодателями, которые фактически пропускают процесс отбора, когда могут подтвердить, что я участвую в различных проектах с открытым исходным кодом.Вероятно, это ваша лучшая защита от небольшого опыта работы в данной области.

Если у вас есть опыт / стремление, тогда проводите презентации и / или сеансы кодирования на собраниях групп пользователей и / или code camps.Это тоже имеет БОЛЬШОЕ значение.Показывая, что вы можете разговаривать с другими программистами в подобном сценарии, это показывает работодателям, что вам нравится программировать и работать с сообществом.

Наконец, начните с малого.Вам нужно будет начать с самого низа тотемного столба, но усердно работайте и покажите, что вы качественный программист, и рекрутеры / работодатели будут ломиться в вашу дверь.

Тот факт, что вы А) разместили вопрос на этом сайте и Б) у вас появился блог, показывает, что у вас есть страсть.Это единственная вещь, которой нет у многих людей, так что вам это выгодно.Используйте эту страсть для расширения своих знаний.

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

Другое дело - найти технологию, за которую, по вашему мнению, вы действительно можете зацепиться, и углубиться в нее, узнать все, что сможете, об этой технологии и этой платформе.Погрузитесь с головой.Причина, по которой я это говорю, заключается в том, что кто-то не собирается нанимать вас, если вы немного знаете об этом и немного о том.Они ожидают, что вы сможете прийти и выполнить свою работу.Это не значит, что вы не должны "играть" с другими вещами, но сделайте себе одолжение и вычеркните их из своего резюме, если только у вас нет производственного опыта работы с ними.

Надеюсь, это поможет.-Кит

Возьмите с собой немного кода на Perl, который:

  • демонстрирует стиль программирования, которым вы можете гордиться,
  • делает что-то значительное и полезное, и
  • является объектно-ориентированным (по уважительным причинам, а не просто для демонстрации того, что вы можете воспроизводить синтаксис)

Внесите исправления в некоторые CPAN распространение.Это покажет, что вы:1) используйте CPAN - менеджеры любят людей, которые могут писать код быстрее 2) могут читать и изменять чей-то код.

Изучать Лось/Мышь - это современная OO-система для Perl, она намного лучше той старой OO-системы, которая была скопирована с Python.

Каждая компания отличается от других.Я был старшим разработчиком программного обеспечения в компаниях-разработчиках программного обеспечения, и мне даже никогда не задавали вопросов о программировании.

Делайте все возможное на собеседованиях и просто будьте самим собой.

Я нахожу ООП полезной, но иногда переоцениваемой парадигмой для работы в рамках нее.Функциональная декомпозиция может завести вас довольно далеко.

Возможно, вы получили хорошую оценку по курсу C ++, но порекомендует ли вас профессор для стажировки?

Репутация вашей школы или ее отсутствие могут влиять на процесс отбора.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top