Задать вопрос
Ответы пользователя по тегу Карьера в IT
  • Хочу быть программистом, но не выходит. Как двигаться вперед?

    @hsc
    full stack python back-end developer
    Эх, расскажу свою историю..
    Мое знакомство с программированием началось, когда мне было 5 лет. Тогда отец откуда-то достал компьютер. Среди прочих ярлычков в папке "игры" был заветный.. Марио! До этого я часто видел эту игру у друзей на приставках, но поиграть в нее вдоволь так и не мог) Можете представить как я хотел поиграть в нее.. но, не тут то было. В 3-м мире я всегда ловил (как я уже знаю) exception и недоуменно смотрел на огромное окно с красным крестиком, текстом на английском и кнопкой "ок". Как-то раз мне повезло, я смог каким-то образом ускользнуть от ошибки, и попасть на следующий уровень. Моей радости не было предела! Я с энтузиазмом приступил, но.. через пару шагов снова увидел ее, уже привычную ошибку. Это стало последней каплей. Тогда я решил, что создам свое Марио и буду играть в него, сколько захочу) Начал с того, что нарисовал в paint уровни игры. Потом из конструктора построил компьютер)) Потом как-то призабыл, но идея во мне жила. В 5-м классе сестра мне купила огромную 600 страничную книгу по Delphi и тогда и моя мечта стала ближе.

    Читая вопрос я вспомнил себя. Знакомое чувство, когда не у кого спросить что-нибудь, когда программный листинг на одну-две страницы кажется огромным и непонятным и когда ты впервые понимаешь зачем в программе переменные! Это чувство я не забуду никогда!

    К чему я? @microvolnovka, то, что ты в 9м классе значит не больше, чем то, чего ты сам хочешь и во что сам веришь. Из опыта скажу, что ты во многом прав про самообразование, но тебе стоит использовать это, ибо понимание этого — преимущество. Ты уже встал на путь самосовершенствования, иди им. Читай книги, спрашивай, ищи, снова читай, снова спрашивай и снова ищи. Ставь себе цель для того, чтобы знать к чему идешь и чтобы силы не затрачивались зря. Технология — это инструмент. Человек, который в совершенстве владеет инструментом — ремесленник, человек который в совершенстве владеет ремеслами — мастер, но и это не предел.

    В университете знания дают, но тем, кто хочет взять. Если не почерпнешь из университета знаний, то варианта 2: или ты глуп, или ты знаешь больше, и не нуждаешься. Но, как правило, 2е почти никогда не встречается. Если ближе к сути, то в университете могут дать направление в котором следует идти и экзаменаторов, которые с более-менее профессиональной точки зрения смогут оценить твои успехи. Плюс ко всему — иногда могут встречаться очень хорошие знакомства, но университет без работы над собой почти ничего не приносит.

    ------
    Upd: я в университете планирую небольшие курсы. Они будут не он-лайн, и аудитория буде по старше, но пока-что ни того ни другого у меня нет, а желание и чуть-чуть возможности поделиться опытом и знаниями есть. Оставляю почту для тех, кому может пригодиться такая помощь и на растерзание spam-ботам: HaySayCheese@gmail.com
    Ответ написан
    Комментировать
  • Отрасли программирования. Кем можно стать?

    @hsc
    full stack python back-end developer
    Мне кажется, что есть смысл начинать с компилируемых ЯП. Они, как правило, более близки к железу, а это, в свою очередь, сыграет очень важную роль в понимании процесса в целом, ведь любая программа, будь то десктопное приложение, или мобильное, или какой-нибудь бэкэнд, рано или поздно превращаться в инструкции процессора, и чем быстрее этот процесс происходит и чем меньше инструкций — тем быстрее она выполниться. Раз у вас есть знания С++ - то это чудесный выбор для начала. Он покажет насколько важны оптимальные алгоритмы, научит планировать и продумывать архитектуру чтоб добиться производительности, научит экономить ресурсы и грамотно управлять ими, столкнет вас лоб в лоб с нюансами типа "битая куча", аварийное завершение приложения со стороны ОС, всевозможные переполнения и т.д. Не стоит этого бояться, в вашем случае, когда есть время, это может стать очень интересным. Кроме этого будет возможность параллельно почерпнуть знаний о строении ОС (виртуальная память, стек, дескрипторы, процессы и потоки и т.д.).

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

    Мне кажется, стоит начать с какой-нибудь амбициозной задачи, с большого и интересного проекта для себя. Пусть это будет что-то сложное, ибо чем больше сложностей возникнет — тем лучше для вас. Главное — терпение и упорство. Именно в таких условиях рождаются опыт и новые идеи. Читайте, ищите хорошие практики, стройте гипотезы и обсуждайте с другими на форумах. Также, стоит обратить внимание на английский язык.

    Поступайте только в профильный ВУЗ. Его выбор, как по мне, не очень важен. В нашей специфике самообразование — это все. ВУЗ вам предоставит, в большинстве случаев, только устаревшую лет на 3-7 дорожную карту, экзаменаторов, время и, возможно, вдохновение, если попадется достойный преподаватель.

    Успехов вам!
    Ответ написан
    8 комментариев