C# для web

Здравствуйте, друзья. Прошу совета в области C# для вэба. Какой необходимый объем навыков должен быть у джуна, который был бы интересен работодателю? C#, ASP.NET MVC, JS, SQL, CSS, HTML — понятно. После изучения .NET (HTML и CSS особо не обсуждаются) немного растерялся. Какая последовательность изучения должна быть, какие фреймворки JS потребуются на начальном этапе? Буду благодарен за любые рекоммендации, в частности по литературе/источникам и организации рабочей среды на Mac.

Предыстория. После 12 лет медицинского образования и 3 лет соответствующей практики в научном направлении решил уйти в среду, которая позволяет быстрее развиваться без бюрократии и маразматиков на управляющих должностях. В школе закончил курсы по Паскалю, Делфи, вэб-дизайну, с тех пор периодически делал сайтики для родственников/знакомых/работодателей. Прочитав массу рефлексий на тему «кодер после 40», решил, что в мои 28 смена деятельности не должна быть проблемой. Так ли это?

👍НравитсяПонравилось0
В избранноеВ избранном0
LinkedIn

Лучшие комментарии пропустить

берешь C#, ASP.Net MVC, Entity Framevork, Unit Testing, JS, knockout.js, HTML, CSS
и спомощью этой всей лабуды педалишь 100500й клон фейсбука.
Когда получится что-то, что не стыдно показать, идешь устраиваешся мидлом на 2 куе
а, ну и английский еще

а по поводу образования не переживай,
тут у нас и юристы встречаются, и даже филологи
врач точно уж не помешает

Допустимые теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Допустимые теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

на Xamarin не? будет и мак и андроид и айфоны (:

Ну не знаю. Я, конечно, нуб, но после знакомства со Swift, сейчас вариант C# для IOS даже не рассматривал

идея не в том что сишарп для ios, идея в том что это инструмент позволяющий ваять один кор для кучи платформ

В смысле кроссплатформенности безусловно круто. Только я все-таки на веб ориентируюсь) Вообще пробовал в xamarin проект набрать: вот пишешь-пишешь, и тут — «ваш проект стал слишком большим для этой версии IDE, дайте денег». Я был бы совсем даже не против дать денег, но не на стадии обучения, когда делаешь явно не коммерческий учебный проект. Пробовал VS Code и подумал, что наверное я что-то не понимаю и с ним все-таки как-то можно работать. Но, судя по отзывам к топику, все-таки нельзя. Потому смирился с win + VS.

на вражеском рутрекере есть кряк. ссылкой могу поделиться. покупать имеет смысл если планируешь получать сертификат xamarin university или ты директор конторы которая зарабатывает ксамарином на сырЗа300Грн. деталей не знаю, но там какой-то отдельный доступ к обучению.

ссылкой могу поделиться
поделитесь)

Большое спасибо всем за ответы!

Выберите одно из двух.
є звичайно версія Visual Studio Code та asp.net 5.0, але в порівнянні з повноцінною студією це звичайно збочення, і крім випадку самозайнятості мало якому працедавцю піде :)))

На мак є Xamarin Studio, але я її не тестила, бо звикла до вс =)

він то є, і юніті теж, але ні один ні інший з вебом не допоможе ;)

Вообще по этим технологиям я бы говорил погуглить %technologyname% interview questions. На начале обычно идут базовые вопросы, вот их и советую поизучать. Типа, если WCF например, то джуну достаточно знать, что такое эндпоинт и какие существуют виды контрактов. В самом шарпе любят помимо 3-4 китов ООП спрашивать отличия абстрактного класса от интерфейса и отличия между reference type и value type. Могут попросить продемонстрировать на бумажке этих китов. Узкие места, такие как делегаты/события/IL-код у джунов спрашивают только особо упоротые.

Вы меня, честно говоря, порядочно успокоили в плане требований) Я недавно, проснувшись, рекурсивный метод для калькулятора СЛАУ на бумажке написал.

%technologyname% interview questions
спасибо, это мне в голову не пришло.
Просто я не ставлю себе цель «со скрипом дотянуть до джуна», а планирую на момент начала поисков уметь значительно больше, чем требуется.
планирую на момент начала поисков уметь значительно больше, чем требуется.
Ну тогда, как уже сказали ниже, из самого шарпа нужно знать лямбды, коллекции (в т.ч. и потокобезопасные), синхронизация потоков (Монитор, семафор, мютекс, а еще async/await, что есть хороший знак: если спрашивают — значит либо проект новый, либо держат руку на пульсе, а еще backgroundworker), делегаты Action и Func<t>, чем они отличаются, дженерики и их констрейнты. Выяснить, почему тип string является неизменяемым и что происходит, если значение переменной string все-таки изменяют. Из сопредельных МС-овских технологий: Entity Framework, из веба — стандартный набор из HTML5/CSS3/jQuery/JSON. Парсинг XML.

Я вот не пойму. Зачем си шарпнику реально знать верстку и все что с ней связано? Это же энтерпрайз, а не пхп и вордпресы править. С такой логикой что все это надо реально знать, то какой смысл? Не проще и быстрее выучить питон +

HTML5/CSS3/jQuery/JSON. Парсинг XML
и получать ту же зп? В моем понимании если в области требуются серьезные знания, то требования к сопредельным облстям ниже. В джаве к примеру мало где в вакансиях говорят что надо уметь верстать.

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

Ну то что они часто не шарят и лепят в требования все о чем слышали — я уже читал. А как в реальности, нашли работу и что там требовалось?

Из Польши позвонили :) Задали базовые шарповские вопросы, написали небольшие сэмплы кодов, попросив исправить ошибки/спрашивали, что выведет, спросили, что я думаю про автоматизированное правительство) В Польше я оказался нужнее, чем в Украине и сейчас за бугром :)

Поздравляю. Честно говоря я в шоке, что там адекватнее в разы набор.

Потому что наших рекрутёров туда не пускают работать

Спасибо :) Хотя неадекваты тоже встречаются. В одной фирме меня пытались завалить, а потом сказали, что ищут сеньоров, а я тяну на мида, в другой я успешно прошел интервью, но эйчарки сказали мне, что уже закрыли весенний набор и сказали податься летом)) А потом через какое-то время позже позвонили из третьей и теперь я там.

устройство CLR
 — вопрос достаточно обширный. Уточните, пожалуйста, что именно вы имели ввиду. Джуну нужно прочувствовать и переварить «CLR via C#»? Я планировал за нее садиться значительно позже.

Ну про устройство CLR не я писал, но отвечу. С Рихтера как раз надо начинать, он очень хорошо все разжевывает, и половина вопросов на собеседованиях основывается как раз на «CLR via C#». Ну и Троелсена «C# 5.0 и платформа .NET 4.5» стронгли рекомендую, я с него начинал вместе с Рихтером.

На самом деле у Рихтера так себе про CLR расписано)
msdn.microsoft.com/...-ru/library/dd335945.aspx
habrahabr.ru/post/263935
Вот тут по-лучше как по мне.

Так в этом и вся прелесть Рихтера. Он хорошо объясняет. А уже потом можно и обратиться к оф.документации МСДНа

Узкие места, такие как делегаты/события/IL-код у джунов спрашивают только особо упоротые.
Узкие места, это асинхронность, синхронизация потоков, устройство CLR, а то что вы перечислили должен знать любой, у кого в резюме есть строчка «.Net».
асинхронность, синхронизация потоков, устройство CLR,
Это уже начиная с джуна+ такое спрашивают. Ему, как джуну-, надо хотя бы делегаты и события осилить, уже не говоря о том, чем они отличаются.
Алсо, по теме «синхронизация потоков», на вопрос «Что такое lock» рекомендую отвечать, что это синтаксический сахар для Monitor.Enter()...Monitor.Exit(). Тогда вопрос о том, что пишет компилятор в IL-код при такой конструкции отпадает сам собой. Ах да! Паттерны проектирования. Тоже маст хев и тоже любят спрашивать. Особенно про синглтон. Некоторые просят написать его реализацию на бумажке.

в мене IL код питали і дєлегати теж і потоки =)

Узкие места, такие как делегаты/события/IL-код у джунов спрашивают только особо упоротые.
Я вже мовчу, про те що в мене на спібесіді на Юніті джуна питали А* алгоритм пошука найблищої цілі, а також запитали що з криптографі знаю, то довелося розповісти про відкрите та закрите хешування
відкрите та закрите хешування
Может шифрование? Хэширование — это необратимое шифрование :) А еще, как геймдевелопера, вас еще должны были бы спросить про алгоритм(ы) обнаружения столкновений, а также определение порядка участников в гонке — кто первый, кто второй и тп)
Может шифрование? Хэширование — это необратимое шифрование :)
Ні, коли я робила лаби по теорії алгоритмів, то ми проходили саме закрите та відрите хешування. От все що знала, все розповідала. Про колізії(зіткнення) теж питали, але не багато

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

не було сенсу розповідати, як стало зрозуміло. Вони надто малу сумму мені запропонували, навіть як на джуна. Я відмовилася від їх офферу

Місяць. Я не спішу, краще краще підготуюсь і знайду щось більш достойне, ніж 300$/місяць, ще й 3 години витрачати на поїздку на роботу/з роботи

ніж 300$/місяць, ще й 3 години витрачати на поїздку на роботу/з роботи
Я как раз начинал с 300, лол. Правда на работу добирался максимум час.

Ну, як бачите. Не всіх задовільняє 300 $ у шарашці

Это в каком городе вы живете, что вас 300 у.е. не устраивает?

Оу... Действительно нищенская. 300 было в моем Мусохранске ОК, но тоже тянул еле-еле. Когда искал джуном+ в Киеве, то рассчитывал на 750 как минимум, когда доллар был еще по 8. Потом во Львове нашел

У меня 65$ В Киеве за 1,5 ставки + педагогическая работа)) Что тем не менее не мешает радоваться жизни)

С женой, которая тоже врач, двумя собаками из приюта и котом)

двумя собаками из приюта и котом)
Как они уживаются? о_О

Все было нормально до вчера, пока кот не решил попить ночью воды. Открыл кран (!) и затопил соседей до 1го этажа (с 6го). А так мир и согласие, конечно.

це після 2х діб без сна на їх тестове, гра в жанрі тауер діфенс, з двома рівнями, з мобами,котрі ходять по 2 путям(який розкидується рандомно), пушками, скорами, золотом і хп. Ще він таке сказав, ніби буде перегляд зп кожного місяця, з ростом рівня коду. Але я у таке не вірю. Навіть в крутих конторах — не менше ніж квартал — перегляд зп. Усі пункти їх тестового я виконала, можливо не ідеально, але встигла у сроки

Нехило.
Надо бы самому поковырять Юнити

якщо буде цікаво, можете глянути: github.com/...ree/master/Assets/Scripts
І після того, що я сказала що очікую хоча б 500, мені заявили, що мій код не тягне на 500, мовляв, я погано впоралася із завданням? у мене було враження, наче мене просто розводят,як лоха. Усі пункти їх завдання були виконанні за чортові 2 дні

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

P.S. За грамотное использование юзингов я бы докинул плюс в карму.

а все ж таки, можете проконсулттувати по недолікам у коді? ну це так, чисто для себе

Из того, что сразу бросилось в глаза:
1. Закомментированный код. В продакшене его быть не должно.
2. Неиспользуемый код. Тоже старайтесь от такого избавляться.
3. В свитч-кейсе желательно default использовать.

Может там что-то еще есть, но это уже при работе вскрывается.

дякую за розвернуту відповідь =) буду виправлятись

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

Вполне может быть. Мне тоже любили говорить «мы подумаем»

Мне не отказали. Мне предложили оффер там, выслал форму на заполнение для приема на работу (почему-то она была на русском языке). А когда я сказала что хочу подумать, начал предлогать уже 400. Но больше мол, предложить не могу

Ок. главное ,чтобы термин ожидания следующего оффера на 500, не перекрыл выгоду от этих 100 долларов..)

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

Джунов даже больше спрашивают. Ибо практического характера вопросы задавать смысла нет

Набор требований напрямую зависит от проекта.
1. Для работы в небольшой студии скорее всего нужно знать
asp.net mvc, bootstrap, angular, SQL Server, EntityFramework , и какуюнить CMS- например Umbraco.
2. Для работы в ынтерпрайзе- немного другие вещи нужны. WCF/WebApi, SQL Server, stored procedures(T-SQL), NServiceBus, опционально- MongoDb, memcached/Redis, SQL Reporting Service, Olap/кубы

Совет! сходи на рутрекер и скачай видеоуроки pluralsight по тому что я написал выше.

Спасибо за конкретику!

Не исключено, что придется знать SOAP

Изучайте все понемногу. На реальном проекте не будет скорее всего разделения ролей. Ну и опять же, перечисленные вещи сильно отличаются по необходимой глубине изучения — например, asp.net mvc — огромный и сложный фреймворк, верстку можно изучать годами, SQL Server не меньше по объему и сложности, чем .NET.

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

Sounds like a challenge. Имеет смысл начинать (при налиичии сформированной идеи) выполнение такого домашнего проекта в процессе обучения при условии уверенного владения базовым .NET? Или стоит начинать уже при наличии базовх навыков в ASP.NET, JS etc? Спасибо.

Если базовые навыки — это прочесть книгу — то прочесть наверное стоит, хотя зависит от скила «разбираться на лету». Если вы вообще без понятия, что такое asp.net, HTML и Javascript и с какого конца к ним подходить — то просто не будете знать, с чего начать. Обычно в книгах по разработке все структурировано как разработка какого-то приложения. Я рекомендую читать и делать за книгой, но не то приложение, которое разбирается в книге, а свое. По верстке и джаваскрипту хотя бы пару уроков надо прочесть, чтобы понять с чего начать и что куда подключить.

И английский учите, без него никуда.

Есть опыт успешного выполнения нескольких тестовых заданий на .NET, WPF (c целью попадания на курсы), английский — advanced. CSS, HTML5 владею (но без хардкорной практики).

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

Тогда mvc и вперед на собеседования.

верстку можно изучать годами
верстальщики на что?

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

А джуном начинать никак нельзя? Или джунам в этом направлении работу не найти?

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

Ну это же <Кэп>. Не понимаю, я задал вполне четкий вопрос: какие требования для джуна, какие фреймворки, порядок изучения, источники. А здесь прямо холивар. Я же не мальчик-студент, которому нужно мозги вправлять, а вполне состоявшийся человек, который до этого добивался всего, чего хотел в кратчайшие сроки. Учитывая то, что среда обитания для меня совершенно новая, я и прошу конкретного совета опытных. В любом случае спасибо.

ответ такой же как и на такой вопрос: «что нужно учить чтобы стать врачом людей? анатомию, терапевтологию, чтоТоЕще — понятно, я немного растерялся когда все это дочитал — ко мне никто не идет лечиться, что нужно еще выучить чтобы наконец-то лечить людей?» нет на это ответа, никто тебе не скажет, ооп и c# это самый минимум, остальное от фирмы к фирмы менятся будет

а еще:

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

Я изначально поставил Win + VS. С VS Code, я так понял, пока заморачиваться не стоит?

Сори, я просто мимо проходил, к миру корпорации зла отношения не имею. Я на светлой стороне.

По медицине. Есть четкие критерии компетентности интерна (аналог джуна). Есть требования минздрава. В ИТ таких «протоколов входа» нет. По медицине же: через полгода после окончания интернатуры со мной советуются профессора по вопросам специальных ультразвуковых методов функциональной диагностики в кардионеврологии. Ко мне направляют пациентов из многих лечебных заведений, включая частные. Мне нужно лишь на данном этапе понимать, какой минимум по фреймворкам для того, чтобы начать комфортно работать в этом направлении. К слову, хороший социопат — тот, который не палится при первом знакомстве. Спасибо за твое мнение, но у меня на данный момент просто нет возможности тратить время на безсмысленные дискуссии.

Ну если сравнивать с медиц тоя думаю на джуна нужно чтото около 3 лет практик в медиц

Поверь большие зарплаты платять не просто так. Вот ты идешь на джуна в си шара. Это 200 до 1000$ зарплата. Вот ориентируйся сколько должен знать врач чтоб столько зарабатывать.

Врач должен быть богом, чтоб 1000$ зарабатывать!
Для меня вообще финансовый вопрос в плане смены рода деятельности на последнем месте стоит. Просто решил попробовать потрогать кодинг серьезно и меня засосало так, что по ночам код снится. Теперь с маниакальным рвением кожу до боли в пальцах.

Для меня вообще финансовый вопрос в плане смены рода деятельности на последнем месте стоит
ну да, да... Это как в тюрьме — все невиновные.

Какой мак? Си шара это виндовс

Будем надеяться, что с ноября не только

Будет работать код. И на линуксе. Но разработка все равно только на виндовсе

я разве что-то другое сказал?

Для джуна требования — это уметь сделать хоть что-то осмысленное на выбранной технологии. Для веба — это asp.net mvc, HTML/CSS хотя бы базовый, хотя бы смочь использовать бутстрап, желателен SQL хотя бы на уровне базовых запросов на выборку и понимания структуры базы.

Вообще важно себя толковым показать.

Есть еще вариант поискать стажировку (тот же джун, но за символическую зп), если финансы позволяют прожить.

Пока десяток собеседований не пройдешь требований не узнаешь. Но можно найти раб даже просто сказав что хочу и могу научиться. Но в основном конечно будут спрашивать жестко

Можно. Но собеседований пройти придется тьму а откликов оставить еще больше. Кто ищет тот находит

12 учился, 3 года практики, сейчас 28...
это с 13 лет в медицинском обучался?

училище-вуз-интернатура-последипломное

28 — нормально, если дисциплинированный, трудолюбивый и с крепкими нервами, будешь кидать «малолетних звездных синьеров» через годик-два. В свой список добавь Knockout или Angular. Этого более чем достаточно, все равно по ходу работы беспрерывно что-то учить прийдется, универсального набора не существует.

ты дофига оптимист, через годик-два он в лучшем случае будет хиленьким мидлом, а ровесники на него будут смотерть как на великовозрастного студента, а студента как на неудачника, который «просрал» 5 лет в отличии от них

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

у тебя есть примеры как люди за год-два синьорами становятся в дотнете?

За год-два вполне реально стать полезным специалистом не ниже среднего уровня если работать над собой. Я это хотел сказать.

Сеньйор это не средний уровень, мало кто может стать мидлом за 2 года с нуля. Хотя если человек уже хорошо знает С#, то возможно.

Кстати да, я таких знаю.

печаль-беда как ты обесцениваешь тайтлы

Тайтлы — ничто.

так-то да, но твое уравнивание новичков с профи поражает

Vadim Kopanev не нужно вести себя занозчиво....
будь скромнее без пантов.......

Vadim Kopanev Vadim Kopanev будь скромнее...

великовозрастного студента
30 лет это детский возраст

берешь C#, ASP.Net MVC, Entity Framevork, Unit Testing, JS, knockout.js, HTML, CSS
и спомощью этой всей лабуды педалишь 100500й клон фейсбука.
Когда получится что-то, что не стыдно показать, идешь устраиваешся мидлом на 2 куе
а, ну и английский еще

а по поводу образования не переживай,
тут у нас и юристы встречаются, и даже филологи
врач точно уж не помешает

Возраст не проблема пока кадров не хватает. По поводу минимума — на сайте CyberBionic Systematics есть такие роадмапы edu.cbsystematics.com/...Images/RoadMap/en/rm1.png

слышал, что с .NETом хорошо идет knokout.js и что он несложный в изучении.
knockout действительно хороший для asp.net, но также стоит взглянуть в сторону angular. Конечно без навыков в самом C # далеко не уйдешь. Как вариант стоит поработать с entity framework и разобраться что такое dependency injection. Ну и кроме MVC пробовать WebAPI. Ну и не обойдется без того, чтобы сделать несколько домашних проектов и залить исходники на github. Удачи :)

Да вот навыки в самом C# есть. Думаю, с чего начать, чтоб двигаться дальше в этом направлении, чтоб систематизировать процесс обучения. Судя по роадмэпу от CyberBionic: сначала Entity, потом JS с фреймворками, потом ASP.NET.

Dan, я думаю, Вам могут быть интересны видео курсы, записанные тренерами CyberBionic Systematics — itvdn.com/ru/catalog.

Спасибо, уже прохожу их курс по Entity

какие фреймворки JS потребуются на начальном этапе?

слышал, что с .NETом хорошо идет knokout.js и что он несложный в изучении.

Подписаться на комментарии