Професійні поради для доктора наук, які прагнуть програмувати? [зачинено]


13

Я багато в чому програміст-самоучок. Насправді я вперше почав програмувати приблизно на півдорозі через середню школу біофізики, і, хоча думаю, що зробив досить гарну роботу, я ніколи не працював як частина «серйозної» команди розвитку, яка мала більше одного-двох інші розробники (і я б не вагався, називаючи їх настільки ж недосвідченими у розробці програмного забезпечення, як професія).

Закінчивши докторську ступінь, я зосередився на програмуванні, офіційно як постдоктор, але неофіційно як програміст досліджень персоналу. У той час у мене також було два інтерв’ю в Google, але не актуальна пропозиція. Оскільки я є, я відклав коріння і, ймовірно, не зміг би взяти роботу. Будинок + дружина з дуже добре оплачуваною роботою тощо. Минуло три роки, і моя чесна оцінка полягає в тому, що я навчився тонни більше, але мені справді потрібно більше групи однолітків, щоб підтримувати або прискорювати своє зростання. Проблема полягає в тому, що, коли я дивлюся, у більшості списків вакансій є вимоги, які здаються неможливими грандіозними, і я вагаюся в застосуванні. Це, або робота / проект здається неймовірно нудною.

Я підозрюю, що або більшість людей просто набагато менш реалістичні, ніж я, коли йдеться про оцінку, скільки часу знадобиться для того, щоб вони швидко зросли, або їм все одно; мій страх полягає в тому, що я просто беззастережно кваліфікований за будь-яку цікаву, добре оплачувану роботу розробника. IE: Я впевнений, що я міг повністю перейти в режим C ++ за пару тижнів роботи (я в основному використовую C, Python, C # щодня), але я не вважаю себе "досвідченим" в C ++ у своєму резюме або подаю заявку для робочих місць, які 'вимагають' таких знань. Кілька додатків, за які я вважав, що я справді хороший матч, не отримали відповіді.

Я підозрюю, що можливі проблеми з моєю заявою / резюме, і я хотів би отримати зворотній зв'язок:

У мене немає ступеня CS. Моя ступінь бакалавра з біохімії та молекулярної біології, доктор біологічних наук. Я взяв курси алгоритмів з низьким рівнем та рівнем та повністю знищив їх, але не знаю, як це ефективно перекласти у своє резюме (різниця між отриманням A + та курінням усіх інших у класі).

У мене є доктор наук, але це не в КС ... Я обговорював питання, чи варто його вилучати з мого резюме, і тим більше, чи ні, тоді було б оманом перерахувати хоча б деякі з цих років як якесь "програмування" 'робота (багато в чому це було).

Я думаю, що іноді є сильні стигми, пов'язані з програмістами-самоучками. Я, безумовно, один із таких. Я навіть усвідомлюю, що деякі з цих стигм є натяком на істину, але я дійсно хочу бути користю для команди. Як я можу повідомити, що, незважаючи на те, що я майже 8 років займаюся самокеруванням, я все одно можу приймати маршові замовлення, коли це потрібно? Я просто так прямо кажу?

Чи варто мені просто стати набагато менш скрупульозним щодо всього процесу? анекдот: У мене є друг, який подав заявку на посади, де він повністю переміг свою кваліфікацію, щоб пройти перший відбір. Він був набагато чеснішим та майбутнім щодо своєї фактичної кваліфікації, коли з ним зв’язався, і йому все-таки вдалося запросити на пару співбесід і навіть отримати кілька пропозицій. Його кулі більше, ніж у мене.


Я захоплююсь наполегливістю звернутися в Google без досвіду! Але, на жаль, ми всі повинні починати внизу сходи. Основна причина, чому роботодавець може не хотіти доктора філософії, полягає в тому, що вони, як правило, вважаються більш теоретичними, ніж практичними (вчені, а не інженери.) Це стосується того, як робити речі, тому потрібно спочатку довести, що ви можете це зробити.
Ніхто

1
Я так само підозрював, на жаль, думаю, що трапляється помилкова думка міждисципліни. Я б заперечував, що більшість людей не отримують докторських наук з біологічних наук, не успішно плануючи роботу, виконуючи роботу та повідомляючи про роботу. А частина "робити роботу" означає забруднити руки: еквіваленти світу програмування кодування, налагодження, налаштування. Я відчуваю, що це схоже на "Отримати справи" - це сенс, який ви мали на увазі. Тепер, як це донести до резюме, не з’являючись педантичного, покровительського чи зарозумілого, ухиляється від мене ...
C SD

1
Яке ваше визначення дна? Я хотів би заробити більше, ніж зараз, але моя більша мотивація - я хочу навчитися більше, швидше і як частина більших зусиль. В даний час я роблю ~ 45k як неофіційний програміст кадрів (postoc), і мої майбутні перспективи, якщо я залишаюсь на цій посаді, не найкращі, але чи нерозумно я вважати, що "дно" не повинно платити менше І бути менш цікавим?
C SD


Якщо ви раніше проводили співбесіди в Google, то, можливо, ваша відсутність ступеня CS не заважає вам працювати там, або вони б не опитали вас в першу чергу. На відміну від багатьох компаній, Google дає "другі шанси", якщо пройшов хоча б рік. Зараз ми на роботу з наймом.
Урі

Відповіді:


12

Як мені це сказати: програмісти приходять десяток, але програмісти з біофізичним досвідом, мабуть, дуже рідкісні. Отже, якби я був ти, я спершу спробував би влаштувати на роботу у своїй галузі, програмування завдання - це частина опису (або зробити її частиною посадової інструкції). Таким чином ви розвинете навички, які є набагато більш конкурентоспроможними та унікальними, ніж те, що має середній розробник, який, зрештою, може стати вам чудовою роботою.

Коли ви плануєте свою кар'єру, ви просто не повинні дивитися на наступний рік або близько того, думати довгострокові п'ять-десять років. Якщо програмування - це те, що ви любите, але, можливо, не маєте для цього формальної освіти, тоді вам потрібно використовувати свої інші навички, щоб знайти потрібну роботу.


2
Знайдіть компанію, яка займається біофізикою, а також програмуванням.
Алекс Фейнман

2
Сильно погоджуються. Вміти говорити на двох полях - це в основному рідкісна навичка. Використовуйте цю навичку робити щось дивовижне.
Пол Натан

1
Однозначно загляньте в обчислювальну біологію
justkt

хороша порада. Я гадаю, що ти мені кажеш, що я не реалістичний. Я сподівався отримати роботу над великим громадським проектом. Такі речі, як WebKit, StreetView / Earth, Photosynth, LLVM, btrfs, пакети для редагування фотографій: Photoshop, Lightroom, Aperture. Робота з біофізики, пов’язана з програмуванням, як правило, більше того, що я вже роблю, це невеликі команди, випадкові процеси ... але я просто виглядатиму важче.
C SD

1
@ C SD - Ні, ви не зможете заскочити у велику команду та повести її. Бути доктором наук, таким є справді ваша позиція, але у вас поки що немає коттів. І що вам потрібно зробити - це змінитись від біофізика, який займається програмуванням, до програміста, який працює над проектами з біофізики. Якщо ви знайдете сильного старшого програміста, подивіться, чи вони вам наставник. Використовуйте ступінь біофізики для підтримки свого програмування, а не дозволяючи йому визначати вас.
SoylentGray

2

Спочатку навчіться зосереджуватися. Серйозно. Довгі складні пристосування потрібно редагувати.

У мене немає ступеня CS.

Не значна частка працюючих програмістів. У великих ІТ-магазинах існує досить багато асоційованих ступенів.

У мене є доктор наук, але це не в КС ... Я обговорював питання, чи варто його вилучати з резюме,

Ні. У промисловості важливий будь-який ступінь. Знову ж таки, за роботу початкового рівня, де ви можете отримати певний досвід, тобто ІТ-магазин у страховій компанії, ви змагаєтесь з дітьми зі ступенями Associates.

Я думаю, що іноді є сильні стигми, пов'язані з програмістами-самоучками.

Що? Більшість ІТ-людей, з якими я працював, є самоучками, оскільки їхні компанії занадто дешеві, щоб залучити інструкторів з нових технологій.

Просто подайте заявку на кожну роботу з програмування. Чим більше ви подаєте заявку, тим більше ви зрозумієте, що шукають.

Деякі великі ІТ-магазини в якійсь випадковій медичній страховій компанії будуть із задоволенням мати когось, хто розумно розумний і знає технології, навіть якщо вони самоучки.

Оскільки більшість (більше половини) працюючих програмістів не мають (а) ніякої корисної ступеня, і (б) є самоучкою за однією або декількома технологіями, які вони очікують використовувати, ваші занепокоєння цілком є ​​марною тратою рук.

Якщо ви хочете виглядати більш професійно, починайте читати більше коду. Почніть з проектів з відкритим кодом, які вас цікавлять, і повністю інженеруйте кодову базу, щоб ви могли побачити, які найкращі практики є.

Крім того, даючи вибір, більшість ІТ-магазинів пропонують найняти людей із «діловими знаннями» замість технологічних навичок. Отже, якщо у вас є більшість докторів наук з якоїсь випадкової тематики (серйозно, ваше питання було настільки довгим і бурхливим ...), тоді зосередьтеся на цій галузі.


Вибачте, це було занадто довго. Я думав, що я ставлю найважливіші шматочки вгорі та внизу, щоб допомогти у швидкому скануванні. Мій досвід щодо: ступеня був набагато навпаки ... Джоел С. навіть має старий пост про те, як "завищені" доктори наук ... Я вагаюся, щоб оцінити його оцінку з абсолютно різних галузей.
C SD

Чи можете ви пов’язати повідомлення Джоела?
Андреа

joelonsoftware.com/articles/GuerrillaInterviewing3.html найвідповідніша частина: Люди, які розумні, але не отримують справи, часто мають докторантуру та працюють у великих компаніях, де їх ніхто не слухає, оскільки вони абсолютно непрактичні. Вони швидше задумаються над чимось академічним про проблему, а не надходять вчасно. -------------------- Якщо говорити контекст, його фактичні критерії є правильними і не мають нічого спільного з науковими ступенями, але він виявляє чітку упередженість, навіть якщо це, правда, жартівливо.
C SD

Я також додам, що мені сказали інші люди (наймачі), що, якщо вища ступінь може почати вас вище або підвищити вас, але вона також може встановити планку вище. Я хотів би перерахувати свій ступінь, оскільки я над цим наполегливо працював, і я думаю, що він демонструє деякі хороші якості (а не обов'язково освіту), але якщо хтось із персоналу, що бачить листи, і думає, "нам доведеться заплатити йому принаймні сума X, і він навіть не має відповідного ступеня та багато досвіду? ERRRRRRRR "
C SD

@ C SD: "якщо хтось із персоналу бачить листи та думає ..." У вас немає ніяких доказів. Ви можете перестати витирати руки зараз. Поки хтось насправді не скаже вам це, вважайте, що це менше, ніж чутка і більше міська легенда.
S.Lott

1

Правда в тому, що вам, мабуть, доведеться взятись за одну з тих «неймовірно нудних» робіт, щоб потрапити на ногу у двері. Але як тільки ви працюєте програмістом у своєму резюме 6-12 місяців, ви повинні мати можливість рухатися вперед та вгору досить швидко.


0

Я твердо вірю, що програмування - це мистецтво, і воно виходить із практики, а не від ступеня.
Так, це зовсім відлякує, що часто організації, особливо великі (як Google), недооцінюють програмістів-самоучок, оскільки вони не мають вищої ступеня. Ви звучаєте як людина з сильним терпінням, і я не вважаю себе достатньо кваліфікованим, щоб порадити вас, але я хотів би зазначити кілька моментів, які можуть вам допомогти:
1. Спробуйте в невеликих організаціях, де вони віддають перевагу таланту.
2. Open Source - це платформа, щоб показати свій талант, отримати реальні знання про розвиток.
3. Сертифікати: Існують різні сертифікати програмування, пропоновані такими гігантами, як MS, Oracle тощо.
Щасти! :)


Дякую за пораду. Особливо №2 виглядає добре, оскільки я використовую багато проектів OSS і навіть вивчаю багато коду в тих, які використовую. Я дійсно повинен би внести свій внесок у деякі з них, але наприкінці робочого дня необхідність підтримувати різні запити програмного забезпечення лабораторії з 15 людей фактично в самоті залишає мені мало часу на здобуття слави через участь. Можливо, відповідь тоді полягає в тому, щоб спробувати №1 з надією, що тоді також можна буде зробити №2. назад до монстра ...
C SD

Ласкаво просимо, і удачі! :)
Рейнджер

Люди-самоучки, як правило, навчаються безсистемно і часто мають великі прогалини у своїх знаннях. Людина, що має ступінь, зазвичай є більш безпечним вибором. Крім того, ступінь показує певний рівень рішучості та здатність щось завершити. Це може не бути справедливим до людини, але є причини найняти людей з дипломами.
Девід Торнлі

Отже, я вважаю, що бути самоучкою І мати неправильний ступінь може бути насправді гірше, ніж будь-який один?
C SD

@David Thornley, тому що здобув любов до мудрості заслугами - немає кращого доказу рішучості. Я б скоріше аргументував те, що хтось досяг чи може зробити зі своїми знаннями, а не звідки і як вони це отримали. Важливі речі щодо кожної людини, як сказав би Хайнлайн elise.com/quotes/a/heinlein_-_specialization_is_for_insects.php .
Філіп Дупанович

0

Раніше я працював і постдоком. Якщо ви можете, пройдіть кілька уроків CS у вашому університеті. Швидше за все, ви не можете офіційно приймати заняття, оскільки ви не є платником, але ви можете запитати у класного інструктора та ТА, чи можете ви сидіти на курсі та робити проекти. Ви не отримаєте оцінку домашніх завдань, але підете в робочий час та використовуйте ресурси.

Чому б ти хотів це зробити? Є кілька занять, яких не можна самостійно вивчити, не відвідуючи хорошої лекції та інтерактивно задаючи питання. Я б запропонував пройти заняття для:

  • алгоритми
  • структури даних (іноді поєднуються з класом алгоритмів; якщо ні, зазвичай другий клас програмування, який пропонує ваш університет) *
  • мережа (особливо програмування TCP / IP-розеток) *
  • бази даних (зокрема використання SQL)
  • операційні системи *
  • мови програмування (зазвичай опитування мов програмування)

Зірочка * вказує, що це зазвичай важкі для програмування класи, тому вони допоможуть вашій загальній здатності програмування.


0

Послабити! Наші найпопулярніші опубліковані твори написані розповідно. Ми не судимо на підставі академічних достоїнств або їх відсутності. Ми про найвідкритішу і нерозбірливу наукову групу там. Вміти зробити свій внесок у щось корисне - це все, що важливо.

Візьміть пункт @ Рейнджера №2. Вам не доведеться брати участь у великому проекті з відкритим кодом, якщо у вас немає часу. Ви могли просто написати невелику бібліотеку. Роботодавці люблять, коли ви звертаєтесь до них із загальнодоступним сховищем, де вони можуть переглянути деякі ваші роботи - вони можуть негайно оцінити, що ви можете дотримуватися правил стилю спільноти, що ви можете читати код інших людей і що ви можете писати ізольований, упакований код , розповсюджений та під контрольним переглядом. Більшість студентів CS класу навіть не можуть цього зробити, тому говоріть про прогалини у своїх знаннях.

Зрештою, ваше вже захоплене програмуванням. Хто чи що там вас зупинить?


Я вважаю, що ви працюєте в Google? Я дійсно не сподівався отримати пропозицію на першому співбесіді, я був трохи розчарований другий раз, хоча, якщо чесно, я б не взявся за роботу, оскільки зараз сильно вкоренився. Тільки розчарувавшись, мені навіть не вдалося отримати відповідь з деяких моїх інших заявок, не кажучи вже про інтерв'ю. Я не подав дуже багато заявок, але ретельно вибирав їх, оскільки вважав, що вони будуть хорошими.
C SD

Ми всі ракетні вчені на папері, правда? Я вважаю, що вони, як правило, не вражені вашим минулим досвідом роботи, якщо ви не надасте їм щось фізичне для перегляду. Більшість із нас не займалися революційною роботою в NASA чи Google. Це було б правдоподібно, оскільки кожен може стосуватися того виду роботи, який там відбувається. Тож ви повинні проявити свої компетенції, а не просто говорити про них. Помістіть QR-код, який їх розміщує на своїй сторінці проектів Зробіть щось інше. Робіть відмінність у калюжі заявників Білла та Джейн. Я не працюю в Google, але саме так я б застосував.
Філіп Дупанович
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.