
Дізнайтесь більше про нові кар'єрні можливості в EchoUA. Цікаві проекти, ринкова оплата, гарний колектив. Надсилайте резюме та приєднуйтеся до нас.
Розповідає Мош Хамедані, автор курсів із C# на udemy
Мої студенти на Udemy часто ставлять мені запитання такого роду:
Моше, мене щойно взяли на посаду Junior C#-розробник. Що ти порадиш? Що мені необхідно вивчити?
Отже, якщо Ви шукаєте першу роботу як C#-розробник або нещодавно її отримали, ця стаття розповість Вам, які навички є необхідними. Я намагався об’єднати їх в єдиий “шлях”, який підійде тим, хто бажає розробляти як декстоп-, так і веб-додатки.
Кожна навичка супроводжуватиметься однією або декількома посиланнями на корисні ресурси.
Базові навички
Незалежно від вибраної сфери розробки є декілька моментів, які варто знати.
Структури даних і алгоритми
Якщо у Вас немає ступеня з Computer Science, я дуже рекомендую витратити місяць на вивчення структур даних і алгоритмів – це засади програмування. Звичайно, Ви можете пропустити їх і зайнятися веб-розробкою, але повірте, різниця між програмістом, який вивчав ці питання, і тим, хто пропустив їх, помітна.
Ви можете здивуватися, але великі компанії, на кшталт Microsoft, Apple і Amazon, приділяють на інтерв’ю багато часу саме перевірці знання структур даних і алгоритмів, а не ASP.NET 5 або WPF! Вони просто хочуть зрозуміти, чи можете Ви мислити як програміст.
Ось непогана книга для початку навчання: Data Structures and Algorithms Made Easy
Прим. перекл. До речі, у нас є відмінна серія статей: “Алгоритми і структури даних для початківців”
Якщо Ви в чомусь не розібралися – не зневіряйтеся! Просто переконайтеся, що Ви зрозуміли, що таке списки, стеки, черги, дерева і хеш-таблиці, і вмієте їх реалізовувати на чистому C#. Реалізуйте декілька алгоритмів пошуку і сортування.
Бази даних
SQL Server – це найчастіше використовувана реляційна СУБД серед .NET-розробників. Розберіться у засадах реляційних баз даних і базових операціях у SQL Server.
T – SQL – це мова запитів, використовувана в SQL Server. Освойте функції SELECT, INSERT, UPDATE, DELETE, JOIN і GROUP BY.
Ось корисні матеріали:
O/RM
Коли Ви працюєте із РСУБД, то часто використовуєте системи об’єктно-реляційного відображення для роботи з об’єктами у базі даних. Є багато таких систем, але найпопулярніша Entity Framework.
Матеріали для вивчення:
Веб-розробка
Створення веб-додатків кардинально відрізняється від розробки десктопних. Веб-додаток містить як мінімум дві частини: клієнт, що запускається у браузері користувача (фронтенд), і сервер, який обробляє всі дії користувача в клієнтові (бекенд).
Тому всі веб-розробники поділяються на 3 групи:
- фронтенд-розробники;
- бекенд-розробники;
- Full-stack-розробники: ті, хто займаються і фронт-, і бекендом.
Залежно від Ваших переваг варто вибрати один з двох шляхів. Full-stack-розробники зазвичай більше затребувані.
Фронтенд
Якщо Ви зібралися зайнятися фронтендом, то Вам треба ознайомитися із засадами HTML, CSS і Javascript.
HTML – це мова розмітки веб-сторінок. На відміну від мов програмування (таких як C#), у неї немає логіки. Для декорації нашої сторінки ми використовуємо CSS. І, нарешті, JavaScript – мова, що відповідає за поведінку веб-сторінки.
Матеріали для вивчення:
- HTML & CSS for Beginners
- Learn to Code HTML & CSS
- HTML5 & CSS Fundamentals on Channel9
- JavaScript on Code Academy
Прим. перекл. А ось наші статті за цими темами: HTML, CSS, JavaScript.
Бекенд
ASP.NET MVC – це домінуючий серед C#-розробників фреймворк для створення серверних веб-додатків. Для роботи з ASP.NET MVC Вам все одно знадобиться базове знання HTML, CSS і Javascript. Тому я раджу Вам почати вивчення з фронтенда і потім перейти до бекенда, вивчивши весь спектр веб-розробки.
Ось моє керівництво, в якому ми створимо простий додаток із використанням ASP.NET MVC5 і Entity Framework 6: A Step – by – Step ASP.NET MVC Tutorial for Beginners
Десктоп-розробка
Якщо Ви хочете зайнятися розробкою додатків під Windows, Вам знадобиться відмінний від попереднього набір навичок (хоча і вони, як не дивно, можуть згодитися). Більшість завдань потребують від Вас знання XAML, WPF чи Windows Forms.
Матеріали для вивчення:
Переклад статті “Critical stuff that every junior C# developer must know”
Київ, Харків, Одеса, Дніпро, Запоріжжя, Кривий Ріг, Вінниця, Херсон, Черкаси, Житомир, Хмельницький, Чернівці, Рівне, Івано-Франківськ, Кременчук, Тернопіль, Луцьк, Ужгород, Кам'янець-Подільський, Стрий - за статистикою саме з цих міст програмісти найбільше переїжджають працювати до Львова. А Ви розглядаєте relocate?