Здравствуйте, Zender, Вы писали:
Z>Ищу работу. Z>Подскажите, что нужно знать программисту, который претендует на вакансию "Стажер C# .NET"?
Java(Core Android), Objective-C, Scala.
В стажеры C# уже лет пять как поздно идти.
Z>Понимаю, что не будут мне платить много. Но согласитесь, за "тарелку супа" тоже нет интереса ездить куда то каждый день. Хотя и понимаю, что больше на меня наверно время потратят, нежели от меня получат)))
Хочешь, чтобы платили много?Н е туда пошел. Тогда тебе надо знать Устав.
Или Табель о рангах.
Z>Вообще, что значит "знать C# на хорошем уровне"? Вот копнул я в ООП, не ну создавать класс, наследовать, использовать поверхностно — это одно. Но там тьма тараканья, если зачитаться. Столько всего, вроде и бесполезного, а вроде может это только мне кажется бесполезным — разные варианты использования, огромное кол-во разных ньюансов. Z>По самому .NET, что нужно знать? Какие ещё технологии?
Взять книжку Рихтера и разобрать от корки до корки. Зарегистрироваться на sql-ex.ru и порешать задачки на SQL. Всё остальное изучишь во время работы.
Z>Понимаю, что не будут мне платить много. Но согласитесь, за "тарелку супа" тоже нет интереса ездить куда то каждый день.
А придётся. Компании нанимают стажёров исключительно для того, чтобы ты выполнял 50%-70% работы профессионального разработчика за тарелку супа.
Здравствуйте, De-Bill, Вы писали:
Z>>Понимаю, что не будут мне платить много. Но согласитесь, за "тарелку супа" тоже нет интереса ездить куда то каждый день.
DB>А придётся. Компании нанимают стажёров исключительно для того, чтобы ты выполнял 50%-70% работы профессионального разработчика за тарелку супа.
Если брать стажера, то ему нужна "нянька". "Нянька" обычно получает очень не мало, и если стажер хоть что-то полезное будет делать, с учетом затрат на няньку уже хорошо.
Говорить же о выполнении 50% от объема опытного программиста ИМХО странно. Все таки стажера берут чтобы он научился и через какое-то время мог нормально работать.
Вот тут вложения возвращаются.
Здравствуйте, SE, Вы писали:
SE>Здравствуйте, Zender, Вы писали:
Z>>Ищу работу. Z>>Подскажите, что нужно знать программисту, который претендует на вакансию "Стажер C# .NET"?
SE>Прочитать последнее издание Рихтера "CLR via C#".
Почти согласен. За исключениме слова прочитать. Не "прочитать", а "Изучить".
Практика показала, что это разные вещи.
Из кроме "CLR via C#" нужно читать ещё и "Создание эффективных Win32-пpилoжeний с учетом специфики 64-разрядной версии Windows" — прочищает мозг.
Всё сказанное выше — личное мнение, если не указано обратное.
С вашим подходом стажера можно год искать. А спрашивать нужно вещи, которые показывают общую адекватность плюс фундаментальные знания. Алгоритм какой-нибудь простенький например. Или чем абстрактный класс от интерфейса отличается Примеры каких-нибудь работ посмотреть — тоже плюс.
И да, вопрос про боксинг — продвинутый. Потому что человек сначала учится решать задачу хоть как-нибудь, а уже потом эффективно и с пониманием, как оно внутри устроено.
Здравствуйте, Zender, Вы писали:
Z>Рихтер у меня есть, открывал. Z>Но честно говоря, не думал, что "стажеру" он будет полезен.
Скорей всего ты правильно сомневаешься в полезности Рихтера. Рихтер насколько я помню о всяких тонкостях пишет, которые на практике нафиг не нужны, если не имеешь привычки гвозди микроскопом забивать.
Здравствуйте, gandjustas, Вы писали:
G>3) Что такое GC и для чего он нужен (необязательно принцип работы)
+100500.
Знание, что такое GC и чем Gen0 отличается от Gen1, встречается в программах буквально везде, без него шагу не ступить и ничего не сделать.
Не зря умный дядька Рихтер так много про него написал.
Здравствуйте, mucks, Вы писали:
SA>>Знание, ... чем Gen0 отличается от Gen1, встречается в программах буквально везде, без него шагу не ступить и ничего не сделать.
M>Тонкий стеб?
Какой тут может быть стеб? Вопрос серьезный и шутки тут неуместны!
Гарбиджа Коллектор — это очень важная тема, иначе про него бы не спрашивал каждый первый сутулый красноглазик-собеседующий.
Ищу работу.
Подскажите, что нужно знать программисту, который претендует на вакансию "Стажер C# .NET"?
Понимаю, что везде свои заморочки, но вот так — приблизительно-ориентировочно, что бы хоть как то пробовать себя.
Вообще, что значит "знать C# на хорошем уровне"? Вот копнул я в ООП, не ну создавать класс, наследовать, использовать поверхностно — это одно. Но там тьма тараканья, если зачитаться. Столько всего, вроде и бесполезного, а вроде может это только мне кажется бесполезным — разные варианты использования, огромное кол-во разных ньюансов.
По самому .NET, что нужно знать? Какие ещё технологии?
Да и вообще, как это сейчас распространено? г.Москва
Понимаю, что не будут мне платить много. Но согласитесь, за "тарелку супа" тоже нет интереса ездить куда то каждый день. Хотя и понимаю, что больше на меня наверно время потратят, нежели от меня получат)))
О себе: 22 года, студент 5го курса технической специальности(но не по IT), увлекаюсь программированием давно, но чисто для себя.
Здравствуйте, Zender, Вы писали:
Z>Ищу работу. Z>Подскажите, что нужно знать программисту, который претендует на вакансию "Стажер C# .NET"?
Прочитать последнее издание Рихтера "CLR via C#". Написать для себя примеры по каждой малопонятной главе.
Пересмотреть хотя бы вскользь неймспейсы и онисания классов базовых библиотек по тому же онлайновому MSDN.
В зависимости от специализации изучать
— базы данных, T-SQL, PL\SQL
— HTML5, javascript
— Win32, WinRT
__S>Говорить же о выполнении 50% от объема опытного программиста ИМХО странно. Все таки стажера берут чтобы он научился и через какое-то время мог нормально работать. __S>Вот тут вложения возвращаются.
Вот тут уже вложения возвращать поздно. Если человек не дурак, то после того, как научится, он запросит такую же зарплату как у остальных, или свалит в другое место.
Здравствуйте, QrystaL, Вы писали:
QL>Здравствуйте, SE, Вы писали: SE>>Прочитать последнее издание Рихтера "CLR via C#".
QL>Стажеру нафиг не нужно.
Даже стажеру придется проходить собеседование. Поскольку большой практики у стажера нет, на то он и стажер, то будут задавать вопросы по теории. И с очень большой вероятностью вопросы будут задавать именно из Рихтера. Причем самые простые, вроде "чем класс от структуры отличается", или "что такое боксинг" или что-нибудь даже провокационное, скажем, "что такое хешкод и чем от отличается от хештаблицы"
Здравствуйте, SE, Вы писали: SE>Даже стажеру придется проходить собеседование. Поскольку большой практики у стажера нет, на то он и стажер, то будут задавать вопросы по теории. И с очень большой вероятностью вопросы будут задавать именно из Рихтера.
Если на Senior developer-а, тогда да.
SE>Причем самые простые, вроде "чем класс от структуры отличается", или "что такое боксинг" или что-нибудь даже провокационное, скажем, "что такое хешкод и чем от отличается от хештаблицы"
И какой в этом смысл — спрашивать тонкости у того, кто максимум азы знает? Даже про боксинг это уже продвинутый вопрос.
Здравствуйте, De-Bill, Вы писали:
__S>>Говорить же о выполнении 50% от объема опытного программиста ИМХО странно. Все таки стажера берут чтобы он научился и через какое-то время мог нормально работать. __S>>Вот тут вложения возвращаются.
DB>Вот тут уже вложения возвращать поздно. Если человек не дурак, то после того, как научится, он запросит такую же зарплату как у остальных, или свалит в другое место.
Это зависит от компании, можно договором предусмотреть. Можно по человечески договорится.
Но как может стажер сразу же решать даже половину задач опытного программиста я не представляю. Либо такие задачи простые, либо стажеры не стажеры.
Ведь даже в простых задачах простор для косяков: поправил то что выглядило плохо, а на самом деле специфические требования или закомитил не туда или написал с косяками или сроки сорвал или....
А как только появляется нянька профит падает сильно.
Здравствуйте, Zender, Вы писали:
Z>Подскажите, что нужно знать программисту, который претендует на вакансию "Стажер C# .NET"?
Прочитать одну нормальную книжку по C#/.NET (типа C# 4.0 in a Nutshell от братьев Albahari или CLR via C# от Рихтера, но для новичка последняя может быть сложноватой).
90% что на работе встретится работа с SQL, поэтому полезно еще разобраться с основами SQL.
Можно для своего опыта написать маленькое приложение, которое например позволяет вести учет клиентов (сохранять данные в БД типа SQL Server).
Этого будет вполне достаточно.
Здравствуйте, elmal, Вы писали:
QL>>С вашим подходом стажера можно год искать. А спрашивать нужно вещи, которые показывают общую адекватность плюс фундаментальные знания. Алгоритм какой-нибудь простенький например. Или чем абстрактный класс от интерфейса отличается Примеры каких-нибудь работ посмотреть — тоже плюс. E>Стажеров с сертификатами всяких Microsoft, Oracle и тому подобным — до хрена и больше! Никаких проблем нет подготовиться и сдать, самый тормоз из тормозов это осилит за месяц. А там и про боксинги вопросы и не только есть, практически покрывает большинство вопросов на неадекватных с моей точки зрения интервью. И что — всю эту кучу стажеров с бумажкой, знающих основы языка — их как сеньеров чтоль рассматривать?
Я бы не приводил наличие сертификатов как свидетельство наличия знаний. По дампам они сдаются не задумываясь.
Здравствуйте, Zender, Вы писали:
Z>О себе: 22 года, студент 5го курса технической специальности(но не по IT), увлекаюсь программированием давно, но чисто для себя.
Все что нужно знать стажеру ты уже скорей всего знаешь.
Так что если хочешь искать работу, то ищи и работай.
Нет смысла что-то специально зубрить только ради какой-то позиции.
От новичков работодатель ожидает в первую очередь желание работать и лояльность.
Здравствуйте, QrystaL, Вы писали:
QL>Если на Senior developer-а, тогда да.
Ну да. Стажера нужно спрашивать о том, как бы он спроектировал какую нидь реальную систему, обсудить с ним какие нидь реальные проблемы и тому подобное. Еще можно по процессам разработки поговорить. Ну а сеньер — этого только по тонкостям языка. У сеньера же ответ чему равен i = i++ + ++i должен от зубов отскакивать, должен наизусть помнить — какие числа из классов оберток будут кешироваться, какие нет. Ну и на листочке itoa сеньер просто обязан писать на скорость аль сортировки пузырьком. Ибо в работе сеньер только и делает, что обращает внимание на тонкости языка, сталкивается с ними каждый день, и каждый день на бумажке школьные задачи решает.
QL>И какой в этом смысл — спрашивать тонкости у того, кто максимум азы знает? Даже про боксинг это уже продвинутый вопрос.
Какой нахрен продвинутый вопрос? По generics тоже вопросы продвинутые? Про итераторы, forEach тоже вопросы продвинутые? Класс от структуры, интерфейс от абстрактного класса — это только для сеньеров? Мне ж тогда интересно, а что ж должен знать стажер тогда? Если он язык не знает, то что он знает? Симплекс метод у него спрашивать чтоль?
Здравствуйте, QrystaL, Вы писали:
QL>С вашим подходом стажера можно год искать. А спрашивать нужно вещи, которые показывают общую адекватность плюс фундаментальные знания. Алгоритм какой-нибудь простенький например. Или чем абстрактный класс от интерфейса отличается Примеры каких-нибудь работ посмотреть — тоже плюс.
Стажеров с сертификатами всяких Microsoft, Oracle и тому подобным — до хрена и больше! Никаких проблем нет подготовиться и сдать, самый тормоз из тормозов это осилит за месяц. А там и про боксинги вопросы и не только есть, практически покрывает большинство вопросов на неадекватных с моей точки зрения интервью. И что — всю эту кучу стажеров с бумажкой, знающих основы языка — их как сеньеров чтоль рассматривать?
Вот серьезно — начитавшихся Рихтеров специалистов по языку до хрена и больше. Причем чем моложе, тем лучше это все от зубов отскакивает. А вот тот же Рефакторинг Фаулера, Совершенный код Макконела и т.д. — такое читают очень и очень редко, в том числе и сеньеры (что ужасает). В результате копипаст и костыли — наше все. Язык знаем, а как программа свяше тысячи строк — так в коде капец начинается, и тривиальную задачу будут месяц делать.
Здравствуйте, QrystaL, Вы писали:
QL>Здравствуйте, elmal, Вы писали:
QL><...>
QL>С вашим подходом стажера можно год искать. А спрашивать нужно вещи, которые показывают общую адекватность плюс фундаментальные знания. Алгоритм какой-нибудь простенький например.
+1. Чем отличаютс Splay и B-tree, например. Или какого-нибудь Кнута-Морриса-Пратта.
Здравствуйте, SE, Вы писали:
SE> "что такое боксинг"
А в чем сакральный смысл знания того, что такое боксинг? В шарпе 1.0, возможно, это было довольно важное знание, в виду отсутствия типизированных стандартных коллекций. А нынче-то в каких местах проблемы с боксингом могут возникнуть?
Т.е. для общего развития что такое боксинг знать может и полезно, но стажеру я про боксинг буду рассказывать в последнюю очередь (т.е. скорей всего никогда), что никак не мешает стажерам становится толковыми программистами и прекрасно решать реальные задачи.
Здравствуйте, SE, Вы писали:
SE> "что такое хешкод и чем от отличается от хештаблицы"
А это зачем стажеру знать? Для практики важно, чтобы программист знал, что поиск бывает полным перебором, бинарным поиском и по словарю, и понимал когда какой поиск нужно понимать. С задачей разработки своей хэштаблицы программист скорей всего не встретится ни разу в жизни, так в чем смысл спрашивать о столь ненужных вещах на собеседовании?
Здравствуйте, Zender, Вы писали:
Z>Ищу работу. Z>Подскажите, что нужно знать программисту, который претендует на вакансию "Стажер C# .NET"? Z>Понимаю, что везде свои заморочки, но вот так — приблизительно-ориентировочно, что бы хоть как то пробовать себя.
1) Основы: циклы, ветвления, swith, функции
2) Основы ООП: кто такое класс, объект, интерфейс
3) Что такое GC и для чего он нужен (необязательно принцип работы)
4) Знать из каких частей состоит .NET последних версий, где найти reference и примеры использования
5) Немного разбираться в БД, как работать с СУБД из программы
6) В идеале понимать и использовать linq (хотя далеко не все "ведущие" так умеют)
Здравствуйте, StandAlone, Вы писали:
SA>Знание, ... чем Gen0 отличается от Gen1, встречается в программах буквально везде, без него шагу не ступить и ничего не сделать.
Здравствуйте, Zender, Вы писали:
Z>Ищу работу. Z>Подскажите, что нужно знать программисту, который претендует на вакансию "Стажер C# .NET"? Z>Понимаю, что везде свои заморочки, но вот так — приблизительно-ориентировочно, что бы хоть как то пробовать себя.
Везде свои заморочки, но стажеру надо знать ЧТО НИБУДЬ, но ХОРОШО. Наизусть и чтоб от зубов отскакивало. ТОчнее от кончиков пальцев. Это показатель, что человек не книжки читал и что то там слышал а реально чем то занимался и это что-то освоил. Значит его можно научить остальному. Возьми, например и напиши 10 разных программ загрузки данных из экселя в базу. От простой консольной до "с гридом форма". Но код отлижи. Напиши 10 раз. пока не заучишь как это делается. и будет о чем поговорить на собеседовании.