Я был в том же положении, что и вы, и я выбрал ту «винтовую школу», о которой вы говорите. У меня была любовь к разработке программного обеспечения, хобби на C ++ помимо базового курса по программированию на HS и мечты. Теперь я профессиональный разработчик, поэтому я поделюсь с вами своим опытом.
Побывав в колледже в течение 1 года (у меня была полная стипендия для технического театра), я поняла, что мне больше нравится программное обеспечение, чем создание декораций.
Год 1- Я начал свою «собственную вещь», которая состояла из поддержки настольных компьютеров для оплаты аренды и развития. Разработка всего, что я мог сделать, для любого, кто этого хотел, за небольшую цену. Оглядываясь назад, я, вероятно, делал заявки на 20 000 долларов за 1000 долларов. Начать самостоятельно - это отстой, потому что даже если у вас есть опыт, чтобы узнать, что это приложение за 20 тысяч долларов, у вас нет правдоподобия, чтобы попросить его. И что хуже всего, я понятия не имею, чего я не знаю, и никаких других разработчиков вокруг меня. Я создал приложения, которые были кошмарами обслуживания. У меня не было навыков в архитектуре или шаблонах проектирования, поэтому я в основном делал вещи, которые взрывались, и делал сетевую поддержку для оплаты счетов. Много Taco Bell, смешанного с «ну, по крайней мере, я не работаю на человека». У меня есть мечта о приложениях, чтобы написать и выйти в мир,
Год 2 - Стать немного лучше разработчиком, узнав, что не нужно делать, и наблюдая, как вещи взрываются мне в лицо. Едва обходятся поддержкой настольных компьютеров, обучением серверов и созданием веб-сайтов. Это должно быть проще, чем работать на этого человека, но у меня нет реального портфолио, поэтому продолжайте.
3 год- Начинаю понимать это. Когда я нажимаю «Файл»> «Новый проект», у меня возникает смутное представление о том, куда я хочу пойти и как строить вещи. Все еще выбирая неправильные архитектуры, веб-сервисы кажутся классными, так почему бы не создать ВСЕ с ними? Нужна калькулятор для настольного приложения? Я создам веб-сервис! Начинаю подбирать несколько клиентов и быть ИТ-специалистом и несколькими программными проектами. Одна вещь, которую я сделал, - это создание сервиса автономного резервного копирования с использованием веб-сервисов, поэтому я мечтал стать «Mozy», когда все еще обменивались лентами. Широкополосная связь только стала обычным явлением, поэтому я был на шаг впереди, и это станет моей идеей на миллион долларов. Но у сервиса были проблемы (из-за моего отсутствия архитектурных навыков),
Год 4 - Наконец, клиент верит в меня для долгосрочного проекта. Мне удается это сделать, не облажаясь; код не велик, но он работает. Начав зацикливаться на счетах, я начал работать с несколькими другими разработчиками (притворяйся, пока не сделаешь это, верно?) И даже отвечая на несколько вопросов по обмену экспертами. О, да.
Год 5 - Если вы еще не заметили, эти мечты в 1-м году все еще не написаны, так что это начинает немного удручать. У меня есть приличный портфель материала, который я успешно написал, получил неплохой импульс и респектабельную клиентскую базу. До сих пор не знаю, что я не знаю, и безубыточности.
Годы 5 - 8 - я объединю их, потому что это больше похоже на «сделай проект, узнай немного о каждом, перенеси этот опыт в следующий». Сегодня середина 8-го года, и только в последние год или два я стал хорошим разработчиком. Эти мечты в первый год уже были изобретены кем-то еще много раз. Если вы не догадались, я не создал Мозы.
По пути у меня были новые мечты и новые идеи, и некоторые были хороши, некоторые были ужасны. Теперь у меня есть навыки, чтобы сделать это, и некоторые из них происходят, и это интересно. Однако у меня есть ощущение, что если бы я поступил иначе, я бы немного сократил это путешествие.
Я не могу говорить о том, как колледж меняет это путешествие; Я оставлю это другим в этой теме. Но советы я дам:
- Вам нужно работать с другими разработчиками. Я не понимал, насколько это важно. Вы не знаете, чего не знаете, пока не посмотрите на чужой код или не получите ужасный обзор кода.
- Сбой, прежде чем у вас есть основные обязанности. Если вы действительно хотите выйти на улицу самостоятельно, попробуйте сделать это до того, как вы выйдете замуж, получите оплату за проживание, детей и т.д. Привыкайте к этому и цените его, потому что это лучший опыт. Но когда у вашего приложения-убийцы, на которое вы только что потратили все свое время и деньги, нет ни одного клиента, гораздо легче восстановить его, когда это только вы.
- Нет ничего плохого в начальной загрузке. Если у вас есть навыки работы с сетью, работайте в Центре сетевых операций или в службе поддержки (что-то в сфере ИТ) и работайте над тем, чтобы стать лучшим разработчиком в нерабочее время и в выходные дни. Общайтесь с людьми на реальных работах. Они понадобятся тебе позже.
- Будьте на 125% уверены, что вы ЛЮБИТЕ разработку программного обеспечения. Страсть к программному обеспечению предшествует части «миллионера», а не наоборот. Если у вас нет страсти к этому, или ваше сердце не начинает биться немного быстрее, когда вы запускаете New Project, займитесь чем-нибудь другим и оставьте это для души.
Я уверен, что смогу продолжить, но забавно то, что я видел этот вопрос, работая над одним из этих снов, и должен был ответить на этот вопрос. :) Удачи.