@OldUnion

Как развиваться .NET разработчику?

Здравствуйте!
Я работаю fullstack разработчиком. Занимаюсь написанием веб приложений в небольшой компании около 2х лет. Для бекенда использую .net, для фронтенда - angular.

Проработав некоторое время появилось осознание, что так далеко не уйдешь (педаля однотипные проектики и перечитывая Рихетра вечером) :) Поверхностные знания есть (по платформе в целом, solid принципы, паттерны, sql и т.д.) но понимаю, что этого недостаточно.
Интересно услышать советы от опытных разработчиком, как развивались Вы или возможно у Вас есть какие-то советы для людей, находящихся в поиске знаний)
  • Вопрос задан
  • 2187 просмотров
Решения вопроса 1
  • Я делаю тоже самое, и тоже 2 года.
    Но вот мне все также интересно, по вечерам читаю книги, на выходных смотрю видео.

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

    1) Род Стивенс - "Алгоритмы. Теория и практическое применение".
    2) Джон Маккормик - "Девять алгоритмов, которые изменили будущее".

    Выучите SOLID (Боб "Принципы, паттерны и методики гибкой разработки"), GOF (банда 4х, хватит https://metanit.com/sharp/patterns/), GRASP (Крэг Ларман - "Введение в объектно-ориентированный анализ, проектирование и интеративную разработку") наизусть, прочитайте книги авторов.

    Работа работой, делайте свое дело.
    А в свободное время учите и читайте то что вечно, или почти вечно - алгоритмы, паттерны и т.п., то что можно применить где угодно и на чем угодно. Не забивайте голову неиспользуемыми фрейворками (приходят и уходят) и другими языками программирования на которые не собираетесь переходить.
    Ответ написан
Пригласить эксперта
Ответы на вопрос 10
  • 1. Попробуйте заменить ng на Vue. Вы реально поразитесь, насколько сменится парадигма на фронте.
    2.1. На бэке, если уже не можете слезть с .Net, пробуйте хотя бы .Net Core (в связке с тем же Vue)
    2.2. Если сможете - пробуйте какой-нибудь нормальный ЯП, типа PHP7 (https://habrahabr.ru/post/332868/), JS (Node.JS), или хотя бы Go.
    Ответ написан
  • dmitry_pavlov
    @dmitry_pavlov
    I am doing my best in .NET freelancing (at Toptal)
    Если вы уже комфортно себя чувствуете при написании разных типов приложений в .NET стэке - то путь может быть таким:
    0) убедиться, что уверенно владеете последним срезом технологий в .NET (в частности .NET Core) как и инструментарием (в частности, Visual Studio Code)
    1) попробовать типы приложений, которые не пробовали - если занимались разработкой веб приложений на ASP.NET - попробовать написать что-то под мобильные платформы, или толстого клиента, и т.п.
    2) попробовать смежные вещи их мира JS (сейчас в Visual Studio много всяких типов проектов, с которыми можно поковыряться)
    3) побаловаться с архитектурными подходами - например, разобраться с microservices - понять как это должно выглядеть в .NET реализации
    4) осваивать прикладные области - например, как можно работать с ML, BigData, AI, и т.п. из .NET (какие-то освоить библиотеки/фреймворки)
    5) просто попытаться взять свои стандартные проекты и заменить ну, например, базу данных с привычной на что-то иное и заставить это работать
    6) начать мониторить индустрию в целом (все стэки разработки), чтобы ориентироваться что есть в смежных "цехах" и уметь сравнивать .NET c ними. Это кроме эрудиции в целом, даст понимание для каких задач, что обычно используется, что эффективно, а что нет, заимствовать какие-то подходы у смежников чтобы реализовать это в .NET (возможно даже вы найдете свою нишу и напишете какой-то полезный порт под .NET - как например когда-то появился NUnit, NAnt, Swashbuckle и прочие чудесные вещи)
    Вышеописанное точно избавит вас от вопросов - что делать дальше. :)
    Ответ написан
  • mindtester
    @mindtester
    1 - на самом деле, как раз в своем стеке, можно расти и расти... (ну или пока стек не выйдет из моды)

    2 - все просто - если готовы и/или хотите начать ломать свои стереотипы - осваивайте прямого конкурента - java.. ну или kotlin для модности...

    рекомендовать вам node.js большого смысла нет, если все так как вы описываете - js уже должен быть знаком.. но нода это тоже вариант

    ломка стереотипов чертовски полезная штука.. но не менее чертовски сложная

    ps

    просто выйдите за рамки .NET... c++ попробуйте.. а потом D-lang... ;))

    это не значит что надо бросать .NET. я сам полностью поглощен C#... но... быть больше своей страсти .. полезно )))
    Ответ написан
  • 1. попробовать в плюсы
    2. высоконагруженный проект, микросервисы, докер; одновременно можно и сменить платформу на java
    3. поботать f#...ну а что, вставляет хорошо после ООП и C#: https://fsharpforfunandprofit.com/
    3.1 там же можно и аналитику данных пощупать: https://fslab.org/
    Ответ написан
  • Jeer
    @Jeer
    уверенный пользователь
    Для фулл стека в принципе должно хватать и разнообразия и чего читать/учить обычно вопросов не встаёт, всегда есть белые пятна. Как по мне, смена работы даёт максимальный прирост профессионального развития. Перейдите в другой проект и сразу найдутся ваши пробелы и закроется вопрос что читать и что учить.
    Ответ написан
  • vladimirbondarev
    @vladimirbondarev
    Разработчик ПО
    Алгоритмы, паттерны и SOLID это база для программирования, без которой писать продуктовый код не получиться. У меня такая же проблема, отчасти иногда помогает смена конторы/проекта/команды. Но как только разберешься с архитектурой проекта опять впадаешь в рутину и уныние. Этого не избежать. Поэтому для себя стараюсь искать сторонние интересные проекты. Например, предложили переписать проект на Golang. Сначала после .Net очень сильно матерился, но потом проникся самим языком и его стеком. На год апатию сняло как рукой. Сейчас появился .Net Core, пытаюсь портировать рабочий проект на него, а потом запустить на Linux. В общем как-то так, иначе можно впасть в ситуацию профессионального истощения.

    В общем мой совет, всегда искать что-то новое и экспериментировать. Еще хорошо помогают профессиональные тусовки. Или просто на выходных не подходить к компу )))
    Ответ написан
  • petermzg
    @petermzg
    Самый лучший программист
    Изучать паттерны, но хотеть разнообразия.
    Скорее всего стоит определиться с жизненными целями.
    Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через TM ID
Похожие вопросы