Відмова від відповідальності (Будь ласка, прочитайте, перш ніж перейти до відповіді):
Я бачив низку питань, подібних до того, яке я хотів би задати, тому ось кілька подібних питань.
ІМХО Вони ні про що, про що я прошу, вони не є цілком ретельними, як я сподіваюся (я не маю на увазі відповісти на наведені нижче запитання, а також не дискредитую запитуючих, я просто хочу бути трохи ретельніше):
Чи може ступінь CS принести користь старшому програмісту?
Важливість ступеня CS при поданні заявки на роботу з розвитку?
Дозвольте мені зрозуміти, я не прошу наступного:
- Як навчити себе програмуванню з нуля (без диплому в КС)
- Як продати себе як хорошого розробника програмного забезпечення (без диплому в CS)
- Як влаштуватися на високооплачувану роботу в якості розробника програмного забезпечення (без диплому в КС)
Трохи контексту:
Тепер, коли у мене відмови відмови, дозвольте детально запитати своє питання, починаючи з короткої історії мого досвіду як розробника програмного забезпечення.
По-перше, мені надзвичайно пощастило. Мені було надано кілька можливостей для роботи (кілька важких задніх PHP / MySQL проектів та кілька додатків WP7 в XAML / C #), за допомогою яких я дійсно дізнався все, що знаю про розробку програмного забезпечення. Майже всі роботи з розробки програмного забезпечення, які я мав, не були належним чином кваліфіковані (і це я зрозумів своїм роботодавцям, перш ніж мене найняли). Я не хочу давати собі кредит там, де це не належить, але я б сказав, що ідеальна смиренність не обходиться скромністю .
Майже в кожній роботі, яку я мав, я перевершив очікування свого роботодавця і виявився цінним надбанням. Звичайно, є винятки 1 . Але моя думка полягає в тому, що я досить розумний і міг навчити себе того, що мені потрібно знати, щоб досягти успіху на своїй роботі. З кожною роботою я все більше розтягувався.
Я відвідую університет університету Вашингтонського університету в Сіетлі, і в даний час я вже на четвертому курсі з двома роками залишився, працюючи на математику. Під час різних робіт, які я мав (дивіться моє резюме, якщо ви хочете цього списку), я також відвідував школу як студент денної форми навчання.
Як я думаю, більшість розробників погодиться, вивчаючи типові загальні курси бакалаврату, включаючи вступні курси програмування АБСОЛЮТНО ПАЛЕС у порівнянні з написанням реального коду, створення реальних 2-х продуктів, роботи з чудовими людьми та позитивно впливаючи на життя користувачів 3 .
Отже ... по мірі того, як справи йшли ... Я витрачав набагато більше свого часу та енергії, працюючи замість того, щоб зосереджуватися на навчанні. Часом я виступав дуже жахливо , але здебільшого я міг триматися на плаву зі своїми оцінками.
Однак програма інформатики в UW є дуже , дуже , дуже , дуже конкурентоспроможною.
Тож мене не здивувало, коли мене відхилили від програми. Двічі. За іронією долі, в тому ж півгодинному вікні, в якому я отримував завжди ввічливе, хоч і відверте повідомлення про відмову електронною поштою, я отримав телефонний дзвінок від Amazon, який запропонував мені літнє стажування 4 як SDE.
Коли я дивлюся на інших чоловіків мого віку (21 рік), які поділяють ті самі цілі, що і я, в розробці програмного забезпечення, я відчуваю себе добре, де я знаходжусь, чого я вчуся, хто я і що Я можу зробити. Звичайно, там багато, набагато блискучіших 21-річних, ніж я, я не хочу сказати, що я виділяюся серед натовпу, лише те, що я відчуваю, що я не беззаперечно відстаю від прогресу мого середнього однолітка .
Я впевнений у своїй здатності бути успішним у світі програмного забезпечення. Що ще важливіше, я відчуваю впевненість у своїх можливостях та бажанні продовжувати рости, вчитися та бути сором’язливим, коли мені це справді потрібно.
Ступінь математики
Мені здається, що я здобуваю ступінь математики з єдиною метою мати ступінь. Є такі, які кажуть, що я повинен відмовитися і почати працювати зараз (як у мене була можливість зробити), а є такі, які кажуть, що я повинен справді закінчити ступінь. Я вирішив продовжувати свою ступінь з зовсім інших причин, ніж обидва табори мають тенденцію виховувати, тому, будь ласка, не заохочуйте мене так чи інакше з цього приводу. Розгляньте питання "закритим" :)
* ГЛИБНА ТОПКА * ... Вибачте, це довше, ніж я передбачав.
По суті це моє питання:
- Як я можу об'єктивно визначити, які напрями навчання, загальні знання та інші навички я отримав би через ступінь CS, який мені зараз може бути або не вистачає?
Як я сортую ці вміння за найважливішим значенням?
Який найкращий спосіб (протягом наступних двох років) доповнити мою освіту, щоб досягти цих атрибутів таким чином, щоб вони відповідали або навіть перевершували рівень CS-ступеня з вищого університету?
Ось такі кроки, які я вже роблю:
- Запитайте спільноту розвитку (ця публікація)
- Дотримуйтесь наставництва з досвідченими розробниками, які поділяють зі мною аналогічний шлях кар'єри
- Визначте коротко- та довгострокові цілі "навчання" та наступні програми, що окреслюють теми навчання
- Продовжуйте писати код та працювати над проектами, якими я захоплююсь
Якщо ви до цього дійшли, ви заслуговуєте на печиво :) Я вдячний, що ви ставитеся до мене.
Отже ... спільнота розвитку, досвідчені розробники, однокурсники, які перебувають у тому ж човні, що і я, яку б порадували ви?
Також ... будь ласка, майте на увазі мої відмови вгорі цієї публікації про те, чого я НЕ прошу.
Оновлення:
Я усвідомлюю, що я не надавав дуже конкретних параметрів для того, що вважаю вдалою "відповіддю" на моє питання. Я вважаю, що питання дуже розпливчасте і могло б дати певні «правильні» відповіді.
Через розумний проміжок часу я оберу відповідь, яка відповідає наступним атрибутам:
- Пояснює, чому стоїть їх відповідь
- Я можу говорити з певного рівня досвіду (будь то найм / взаємодія з чи хтось, хто має / знаходиться в моєму взутті)
- Короткий, але ґрунтовний, дає широкі принципи, переважно поєднуються з конкретними прикладами
- Нарешті, враховуючи довжину, яку, можливо, вимагатиме відповідність вищезазначеному, будь ласка, зробіть це гарною добре повідомленою відповіддю, яку приємно читати. Інші, хто може зацікавитись цим у майбутньому, я би сподівався, що будуть розважатись, а також отримувати освіту від відповіді.
Тож є деякі параметри для "правильного". Думаю, вони дуже високі, але я створив їх як начерк для того, на що я вважаю, що найкраща відповідь. Очевидно, що дано достатньо часу, я виберу найближчу відповідь як "відповідь".
(1) - Я працював над попередньою версією цього веб-сайту, і поки у нас не було явного розмовляючи про це, я відчував, що мені взагалі не вдається зробити дуже добре (це може бути про що свідчить той факт, що з тих пір вони повністю змінили свій веб-сайт) (2) - По-перше, так, це справжній продукт (хоч я і пишу цю публікацію в Chrome ...), і вона б'є попку. По-друге, я був стажером середньої школи в тесті, писав докази Код концепції для деяких нових функцій для IE8 ... так це було деякий час тому. (3) - На момент цієї публікації я розробник, який написав цю програму, я більше не є відповідає за свою кодову базу (4) - Моє стажування розпочнеться у червні 2012 року, і я працюю у Веб-магазині команда.