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

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

Прощай, экономика

В течение многих лет я мечтал стать экономистом, который изменит мир. Я хотел найти волшебную палочку и стать героем для масс. Чтобы осуществить эту мечту, я провел экономическое исследование и прошел изнурительные курсы подготовки к получению докторской степени. в экономике. Когда я закончил, страсть все еще была, но что-то пошло не так. Чтобы убедиться, что я по-прежнему хочу оставаться на пути, по которому я шел, я записался на программу пост-бакалавриата в Университете Питтсбурга. Там я получил докторскую степень. курсы и провела дополнительные исследования. Хотя мне нравилась учебная программа и меня по-прежнему интересовала область экономики, я больше не стремился получить степень доктора философии.

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

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

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

Мой путь изучения кода

План состоял в том, чтобы научиться программировать и начать бизнес. В начале я начал с книг. Я подумал, что действительно хорошо учился по книгам в колледже, и я просто продолжу это для программирования. Я начал с ускоренного курса Python Эрика Маттеса, который обучал основам программирования. Затем я перешел к другим книгам, в которых преподавались более продвинутые концепции. Как только у меня появилась хорошая основа, я сосредоточился на проектном обучении. Я следил за учебными пособиями, но понял, что мало что запоминаю. Я пытался создавать небольшие проекты, но они были слишком тривиальны, чтобы на них учиться или строить. В этот момент я понял, что создание готового к работе приложения займет намного больше времени, чем несколько месяцев обучения. Вместо того, чтобы сосредоточиться на открытии бизнеса, я сосредоточился на поиске работы.

Я начал использовать другой подход и купил курсы Udemy. Это стало катализатором моего пути к обучению. После долгих исследований я оказался на The Complete 2022 Web Development Bootcamp от Udemy. Этот курс позволил мне вернуться к основам и развить их. От основ HTML, CSS и JavaScript до полнофункционального приложения React и Express. Я смог создать свой сайт-портфолио и доработать свои предыдущие проекты. Они по-прежнему были не очень красивыми, но я, наконец, был на том уровне, на котором я мог создавать приложения, не обращаясь к учебнику или видео. Все, что мне нужно было, это посмотреть документацию по языку, который я использовал.

Я чувствовал себя достаточно подготовленным, чтобы подать заявку на должность разработчика программного обеспечения. Это был изнурительный процесс, я получил бесчисленное количество отказов, но я видел прогресс. Чем более продвинутыми были мои проекты и чем полнее мое резюме, тем больше ответов я получал. Я был очень уверен в своих силах и решил бросить работу, чтобы полностью сосредоточиться на поиске работы. Помогло и то, что мой партнер очень меня поддерживал и верил, что в конце концов у меня все получится. Вскоре я получил работу своей мечты — должность разработчика программного обеспечения с полным стеком. Это было идеально, потому что я хотел испытать создание реальных приложений от начала до конца.

Оглядываясь назад, я бы выбрал следующий подход к обучению программированию:

  • Сосредоточьтесь на изучении варианта стека MERN (MongoDB, Express, React, Node). Я заменил MongoDB на MySQL.
  • Начните учиться на Udemy. Вам не обязательно использовать курс, который использовал я, но очень важно иметь структурированный учебный план, который постепенно строится на основе того, что вы изучаете.
  • Начните создавать небольшие проекты по мере того, как вы начинаете учиться, и работайте над более крупными проектами.
  • Постоянно уточняйте свое резюме. Скорее всего, ваше резюме версии 1 не самое лучшее, что может быть.

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

Учимся, зарабатывая

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

Дома я продолжал заниматься сайд-проектами и решил создать клон Uber. Через несколько месяцев у меня было приложение с базовыми функциями вызова такси и почти точная копия пользовательского интерфейса приложения Uber. Этот опыт помог мне развить свои навыки и приобрести новые, такие как Redux, WebSockets и Material UI. Я понял, что добился невероятного прогресса всего за несколько месяцев. Я подумал, что если бы я мог создать это в одиночку за короткий промежуток времени, представьте, что я мог бы создать, потратив больше времени.

Я знал, что наконец-то у меня есть навыки для создания стартапа. Я начал небрежно придумывать идеи того, чем бы я хотел заниматься. В конце концов, мне пришла в голову идея стриминга в виртуальной реальности. Мне понравилась идея работать с передовыми технологиями и приближать нас к легкодоступной виртуальной реальности. Я подумал о таких сервисах, как GeForce NOW и Google Stadia. Я хотел что-то подобное для VR. Как только у меня появилась идея, она становилась все более заметной в моем сознании по мере того, как я ее исследовал. Я знал, что у меня есть навыки и страсть, чтобы это произошло. Я решил пойти на это. Так же, как я решил научиться программировать. Я знал, что со временем можно научиться и создать что угодно.

XRStream

Вскоре я разработал XRStream — комбинацию двух вещей. XR означает VR/AR, и сервис фокусируется на потоковом VR-контенте. Он предлагает потоковую передачу виртуальной реальности на облачный ПК из облака любому, у кого есть Meta Quest или Quest 2. Это означает, что вы можете играть в любые высококлассные виртуальные игры, которые у вас есть, такие как Half-Life: Alyx, на своей гарнитуре Quest. Он все еще находится в разработке, но близок к официальному запуску. Я потратил бесчисленное количество часов, чтобы довести его до этого момента, и я любил каждый момент этого. Я работал с ранними бета-тестерами, которые помогли мне понять, какие функции были наиболее важными. Было много циклов разработки, тестирования и дальнейшего развития. Сегодня сервис стабилен и конкурентоспособен в облачном пространстве потоковой передачи VR, потому что он быстрый, удобный и экономичный. Поскольку я продолжаю работать над XRStream, поддержка большего количества гарнитур и предложение большего количества вариантов ОС находятся на горизонте разработки.

Если вы хотите узнать больше, посетите https://xrstream.co.

Я могу искренне сказать, что благодаря этому опыту мои навыки разработки выросли в геометрической прогрессии. Разработка облачного сервиса потоковой передачи виртуальной реальности для ПК была самостоятельным путешествием. Это потребовало разработки клиента и сервера, взаимодействия со сторонними сервисами и разработки приложения для Android. Я изучил новые языки программирования, такие как C++, Java и Python. Если людям интересно, я создам еще один пост с подробным описанием того, что сделало это возможным и чему я научился на этом пути.

Если у вас есть вопросы о чем-либо, не стесняйтесь, присылайте мне письмо по адресу [email protected].

Спасибо, что прочитали!