singlepost

Как начать карьеру программиста? << На главную или назад  

Понимаю, тема – боян, но я попробую пояснить что я имею ввиду.
Гугление по запросу "как стать программистом" обычно приводит на форумы, где парень, вообще не представляющий что такое программирование, просит посоветовать книгу.. Вопрос же в другом: как приблизиться к профессиональному программированию, какие шаги для этого предпринять? Ведь, если человек по книге научился писать тетрис, то наверняка такой стиль программирования совершенно не подходит для профессиональной деятельности, в гугл его не возьмут :) . Поэтому и интересует: какие шаги на практике предпринять, чтобы приблизиться к уровню профессионала и начать профессионально работать программистом?

79 ответов в теме “Как начать карьеру программиста?”

  1. 27
    Нгамдкхе Кверос ответил:

    хороший программист в принципе может быть одиночкой, но одиночка на работу в контору не нужен. для разовых испытаний привлекать можно, но расчитывать на такого человека, который сегодня есть, а завтра его нет, и делать большие ставки серьёзные конторы не будут (а у нас крепостное право отменили и любой человек в любой фирме завтра может исчезнуть, также как и вечную жизнь пока аддоном при зачислении на работу ни к кому не прикрепляют)
    потому и требования к стилю кода при зачислении на работу зачастую куда выше реальных знаний на зубок по приоритетам префиксных или постфиксных операций.
    вот простой пример, напишу я аццки гениальную и супер быструю прогу, но в коде разобраться могу только я, средний блок аэс расчитан на работу от 50 лет, через 30 лет начнётся перевод на 64-ёх битные процы и прогу так или иначе надо будет адаптировать, переписывать под новые реалии. или я не знаю, один из шкафов управления заменят на микроконтроллер с целью экономии или потому что какие-то детали просто будет не достать. а я в 2024 пойду кататься в горы и меня лавиной собьёт. блок останавливать? или всю разработку с нуля начинать?
    в угоду читабельности и прозрачности часто идут на издержки жертвуя производительностью и компактностью кода. это серьёзные конторы которые не делают одноразовые плееры, а те что поддерживают продукт десятилетиями.

    есть у меня знакомый, он пишет всякие игрушки типо трёхмерных тетрисов, шахмат, минёров… относительно простенькие и сам их отдаёт издателю в 1c, те продают и ему капает денюшка, неплохая денюшка, существенно больше чем мне, но на работу ни в одну контору он нафиг не нужен, от его кода волосы стают дыбом, а кругозор и способность к обучению никакие. чуть нестандартная задача и он в ауте. хороший ли он программист? раз программы работают наверно хороший.

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

    у вас вобще всё очень просто захотел так сделал захотел эдак.. чего мелочиться, давай сразу для начала карьеры пишешь новую безглючную винду с полным соответствием спецификаций её апи и выбрасываешь на рынок, захватываешь мир. ну это для начала. как 100 млрд накопишь устроишься работать в католическую церковь.

  2. 26
    Владимир Нннннн ответил:

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

  3. 25
    Владимир Нннннн ответил:

    Вам расписать все дословно, какие технологии используются для того чтобы найти уязвимость в исполняемом файле или вы прочтете соответствующую литературу?Есть некоторые классы уязвимостей зная о них и используя целенаправленный поиск в отдизассемблированом коде можно найти множество ошибок. В институте этому не научат, максимум познакомят поверхностно с криптоалгоритмами и прочей теорией по устойчивости систем, но это будут даже различные курсы лекций и читаться они будут в разные годы. Единственное решение – практика и еще раз практика. У фирмы, которая заинтересована в стабильности продукта и которой не выгодно чтобы хакеры каждую неделю находили неизвестную уязвимость, и использовали для своих целей – нет выбора как только искать такие вот команды и нанимать их на работу.

  4. 24
    Нгамдкхе Кверос ответил:

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

  5. 23
    Нгамдкхе Кверос ответил:

    если луна зелёная то дважды два четыре…

    странная логика у вас, однако.
    у меня вот ничего не отпадает.

  6. 22
    Владимир Нннннн ответил:

    >очень интересно, это типо воровство исходрников? или коллектив тестировщиков заказчик считает возможным перевести себе как полезный отдел? это две большие разницы

    ты с дизассемблерами, декомпиляторами и отладчиком когда-либо работал? выполнял анализ краш дампов программ от которых у тебя нет исходников? знаком с принципом поиска и анализа уязвимостей программных продуктов?
    если да, то твой вопрос отпадает автоматически ;)

    >названия компаний засекречены как я понимаю.
    нет, не засекречено. вспомню линки – скину.

  7. 21
    Татьяна Дубровская ответил:

    практика,практика…а где ж её взять если без неё никуда не берут???а если и берут,то писать максимум иногда обработочки на вба…

  8. 20
    Нгамдкхе Кверос ответил:

    названия компаний засекречены как я понимаю.

    "по такому принципу начинали несколько команд тестировщиков. создается команда, ловятся баги под серьезные продукты, отфильтровывается коллектив, а дальше – сотрудничество и/или поглощение. поглощение именно коллектива разработчиков, в том числе и создателя- руководителя(менеджера)."

    очень интересно, это типо воровство исходрников? или коллектив тестировщиков заказчик считает возможным перевести себе как полезный отдел? это две большие разницы

  9. 19
    Владимир Нннннн ответил:

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

  10. 18
    Тимур Багаутдинов ответил:

    А зачем такое делать? Я этого не понимаю просто… получаешь реальные деньги за свой бизнес.. и вдруг на, отдаешь его… даришь просто-напросто.

  11. 17
    Владимир Нннннн ответил:

    >сколько программистов моложе 30 лет без диплома в крупных компаниях вы знаете?
    лично – троих, даже моложе 25 лет.
    >
    Что-то меня такой вариант в полнейший ступор в гоняет. По-моему, человек полный идиот, если создает бизнес с целью продажи и потом дальнейшей работы на дядю. И наверняка, потом большая компания просто выдавит и все. Клиникой попахивает. Я понимаю, создал проект -> развил -> продал. Дальше по-новой поехал.
    по такому принципу начинали несколько команд тестировщиков.создается команда, ловятся баги под серьезные продукты, отфильтровывается коллектив, а дальше – сотрудничество и/или поглощение. поглощение именно коллектива разработчиков, в том числе и создателя- руководителя(менеджера).

  12. 16
    Тимур Багаутдинов ответил:

    Странный вопрос…
    Надеюсь автор для себя уяснил, что он все-таки конкретно от себя хочет? Мне вот как-то смутно понятно, что эт за профессиональный программист такой.
    Так, можно и Макконелла "Совершенный код почитать". Можно и Спольски почитать.

    >> Альтернативный вариант – пишешь свой проект, конкурент их продуктам или из области их перспектив развития, продаешься их конторе в качестве поглощения(тот же Руссинович)

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

    >> в гос секторах – без корочки никуда, у них отчетность
    Песни и пляски народов севера. У меня дядя высокопоставленная шишка. Зуб даю, что в любую организацию пристроюсь. Связи…

  13. 15
    Нгамдкхе Кверос ответил:

    сколько программистов моложе 30 лет без диплома в крупных компанияхвы знаете?
    не надо вспоминать 60-ые когда действительно брали "кого угодно" ибо программистов небыло.

  14. 14
    Владимир Нннннн ответил:

    Ну вот, начали дядями в Киеве хвастаться, еще тетей из Москвы вспомни ))
    Топикстартеру – похуй на диплом, если есть мозги – пробьешься, и без дипломов в тот-же майкрософт берут.

  15. 13
    Нгамдкхе Кверос ответил:

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

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

    поглощение это отдельная тема, в принципе реальная, но тогда тебе надо реально и раскрутиться, если ты напишешь альтертанивный паинт конкурент видовсовскому никто тебя только за это покупать в микрософт не будет.

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

  16. 12
    Владимир Нннннн ответил:

    >>без корочки диплома такие недоразвитые работадатели как гугл тебя не возьмут также мило улыбнутся в ibm simens samsung и множестве других невежественных предприятиях, профессиональный программист без корочки и опыта работы должен уметь найти профессионального работадателя.

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

    У перечисленных выше конторах на приемеесть специальные тесты, на предмет потенциала креативности и широты мышления. Там требования только – хорошие знание их сред разработки.
    Альтернативный вариант – пишешь свой проект, конкурент их продуктам или из области их перспектив развития, продаешься их конторе в качестве поглощения(тот же Руссинович)
    Еще одна альтернатива – подключение к их публичным разработкам, в последствии если покажешь хороший прогресс, могут забрать на работу.

  17. 11
    Александр Терлянский ответил:

    Всем спасибо за комментарии, это то чего я ожидал.

    Алексей ITkid Гридин, нет, я так не хотел, я как раз понимаю, что опыт надо набирать начиная с нижних должностей. Ответ "идти устраиваться джуниором в ЕПАМ" меня бы вполне устроил. Лишь бы он был дан людьми, которые в этом "варятся" )

    Привет, Иван. Технологии меня интересуют такие: .NET и C#. Какой-никакой опыт общения с ним имею :) . За совет спасибо!

    Нгамдкхе Кверос, во-первых корочка есть. Факультет электроники и вычислительной техники, не знаю, как там на неё посмотрят в гугле :) . Про стиль я немного нето имел ввиду, я говорил о том, что существуют общие правила хорошего тона программирования, к которым самостоятельно можешь и не прийти, ведь "код и так работает". За совет по началу карьеры спасибо!

  18. 10
    Нгамдкхе Кверос ответил:

    без корочки диплома такие недоразвитые работадатели как гугл тебя не возьмут также мило улыбнутся в ibm simens samsung и множестве других невежественных предприятиях, профессиональный программист без корочки и опыта работы должен уметь найти профессионального работадателя.

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

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

    иногда работаю с другими отделами там другой стиль, (от именования переменных до расставления фигурных скобочек и мест начальной инициализации переменных, работы с индексами…), что делать, приходится чесать под разные гребёнки. ничего тут особенного нет. нах сдался левый файл в большом проекте пусть он может в каких-то частях и более читабелен.

    соответственно карьера начинается легко и просто, идёшь в институт, курсе на 3-4 поступаешь работать куда-нибудь тестировшиком, верификатором или ещё кем, не суть важно, важно чтобы через тебя шёл реальный код, пишешь хорошие курсачи и диплом, переводишься работать с примерами разных проектов и стилей кода на нормальную работу в тойже или другой организации.

  19. 9
    Александр Васюченко ответил:

    Я тоже присоединяюсь к мнению, что нужнобольше практики и опыта.

  20. 8
    Иван Voyager ответил:

    Санек, привет! :)
    Определись, какие технологии тебе интересны и востребованы.
    Книги могут помочь на первом этапе, но они не являются панацеей, дадут только академические знания, от их постоянно чтения опыт будет небыстро расти. Знания и умения строить архитектуру, продумывать логику и т.д. приходят с решением конкретных задач. Так что шаги – решение задач, написание приложений от и до, спотыкание на ошибках, их исправление (и понимание как можно сделать лучше то, что раньше сделал). Главное – практика, практика и еще раз практика!

  21. 7
    Алексей Гридин ответил:

    Эм а вы хотите из грязи в князи? Не имея опыта начать с должности архитектора?

  22. 6
    Владимир Нннннн ответил:

    Все самому, все своими руками )
    Учись работать самостоятельно по книгам, ведь в универе именно этому и хотят научить – самостоятельной работе. Корочка от диплома – это для особо тупых работодателей, остальным достаточно показать свои умения. Свой стиль выработаешь на практике, достаточно посмотреть сорцы какого-либо серьезного проекта с sf.net, чтобы понять к чему нужно стремиться и перенять все лучшее. Главное желание, остальное – второстепенно.

  23. 5
    Сергей Романов ответил:

    Главное программировать!!!

  24. 4
    Александр Терлянский ответил:

    Сергей ^смешной_чилавег^ Суслов, допустим уже сделано :) . Всё равно, у меня ощущение, что далее чем в джуниоры меня не возьмут )

    Александр Городилов,
    - практика. Согласен, но, ИМХО, без сенсеев практикой культуру программирования себе не набить… и к правильному применению шаблонов проектирования и прочих вещей самому вряд ли прийти
    - книги, faq. Согласен, знания лишними не бывают, но это долго и малоэффективно..

  25. 3
    Виктория Ррональдо ответил:

    хороший вопрос…

  26. 2
    Сергей Суслов ответил:

    Пойти учиться на программиста в институт.

    всегда ваш К.О.

  27. 1
    Александр Городилов ответил:

    Для того чтобы стать профессиональным программистом необходимо две вещи это:
    - практика, практика и еще раз пракртика – необходимо писать программы и чем они сложнее тем лучьше;
    - читать книги, faq, help – вся прелесть программирования это то что одну и ту же вещь можно сделать по разному причем все способы в различной степени оптимальны.

Клуб программистов работает уже ой-ой-ой сколько, а если поточнее, то с 2007 года.