Задать вопрос
@iFastyyy

Что стоит делать в 16 лет, если планирую стать специалистом в системном программировании?

Выбрал на первый взгляд интересную для себя область. Знаю что web разработка проще и позволит приносить деньги намного быстрее, чем системное программирование, но мне кажется что в долгосрочной перспективе системное программирование выигрывает. Тем более что я слышал оно не самое легкое и меня это не отталкивает. Я сейчас составляю свой план на ближайший год, что-то типа майнд карты, для того чтобы мне было проще себя направлять. Но столкнулся с проблемой. Вот допустим изучу я ассемблер и C, как будто это самое легкое из всего. Далее какие-нибудь пет-проекты. А дальше что? Меня же не возьмут даже на стажировку в таком возрасте и непонятно где опыта набираться.
  • Вопрос задан
  • 199 просмотров
Подписаться 1 Средний 4 комментария
Пригласить эксперта
Ответы на вопрос 7
sergey-gornostaev
@sergey-gornostaev
Седой и строгий
Вот допустим изучу я ассемблер и C, как будто это самое легкое из всего. Далее какие-нибудь пет-проекты. А дальше что?

К тому моменту, как действительно выучите, вам как раз будет 18 и проблема возраста исчезнет.
Ответ написан
Комментировать
CityCat4
@CityCat4
//COPY01 EXEC PGM=IEBGENER
Меня же не возьмут даже на стажировку в таком возрасте и непонятно где опыта набираться.

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

Поэтому лучше всего бухать и щупать девок за интересные места писать пет-проекты и изучать асм и С - системное программирование предполагает глубокое знание той оси, под которую собираешься писать, а работа на асме кроме этого предполагает знание общей архитектуры компьютера, архитектуры процессора, особенности его работы etc.
Ответ написан
Комментировать
mayton2019
@mayton2019
Bigdata Engineer
Вот допустим изучу я ассемблер и C, как будто это самое легкое из всего.

Это - вершина айсберга.

Если ты начнешь изучать например ассемблер для x86, то это целая история изменений. 16/32/64 регистры
и наборы команд для векторизации. Я-бы сказал что это все очень затягивает и это автоматически
вовлекает новые области знаний такие как - железо, микро-контроллеры, сети.

Далее может быть направления - системотехника и безопасность. Далее - оптимизация (параллелизм
и конкуренция).

Тоесть на самом деле нельзя сказать что я вот "изучу С" и положу книгу на полку. Это - как и зучить
современную физику. У тебя всегда будут открытые вопросы. И их число будет только расти.

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

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

Пример, что бы состряпать простейшую формочку с кнопочкой и текстовым полем на win32 требуется минимальные знания c++, win32 api (да и не нужно знать, достаточно пары примеров посмотреть) и знание тулчейна (как настроить и как пользоваться), что бы собрать из исходников свое приложение..

А что бы состряпать решение, которое создаст дополнительный рабочий стол windows, подключит к нему второй монитор, дополнительную клавиатуру и мышку, и сделает на рабочих ревизиях многопользовательский терминал (смотри ibik aster) необходимо разбираться во внутренних особенностях и глюках win32 (в т.ч. что там последовательно наломали майкрософт со времен winnt4 до win11), разработать драйвера прослойки (что бы правильно разделять управлени и доступ к клавиатуре и монитору), да еще что бы это работало на одной видеокарте и не требовало по отдельной на рабочее место... в общем вот ЭТО системное программирование.

p.s. есть мнение, что что бы работать на таком уровне нужно не просто знания, но и соответствующий склад ума, какая то внутренняя мотивация (многие вещи тупо скучно изучать просто так) и возможность это делать продолжительное время.
Ответ написан
Комментировать
@alexalexes
Учите пока академическую базу:
Алгоритмы и структуры данных, сетевые информационные технологии, дискретную математику, немножко алгема, принципы функционирования операционных систем, проектирование информационных систем, теорию реляционных баз данных.
Не заостряйтесь на конкретных инструментах и их версиях, обращайте внимание как оно теоретически устроено.
Когда наберетесь знаний студента 3-курсника, тогда можете уже профильно выбирать, на чем будете зарабатывать деньги.
Ответ написан
Комментировать
@Drno
нигде, ждать 18 лет...
Ответ написан
Комментировать
@res2001
Developer, ex-admin
В 16 лет, если вы еще в школе, следует готовиться к поступлению в профильный институт/университет.

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

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

Похожие вопросы