Вы инженер-энергетик, отработали после института два года по специальности и три года инженером-электроником, где по сути не сильно постигли азы профессии. Плюс, с 12 лет занимаетесь электроникой, но так, не профессионально, под настроение. Плюс вы работаете под линукс, ну и переодически пишете прикладные программы под линь. Прошли курсы программирования под линукс. Знаете микроконтроллеры, но опять же на любительском уровне.
И тут вы уволились, разместили резюме на суперджоб. И о ЧУДО! вами заинтересовались, да не просто там абы кто, а сам Samsung! Пригласили на собеседование аш на две вакансии. Радостно собираешься, бежишь, весь из себя супер-пупер крутой программист...
...
....
... два часа планомерно ты понимаешь, что ты нихера не знаешь в программировании, а если что-то и знал, то в эти два часа ты забыл напроч, Linux ты не знаешь совсем. Да, совсем, даже не представляешь что это такое, и чувствуешь себя так, что ты нафиг сюда пришёл...
Второй раз иду валить мамонта, и второй раз понимаю, что мне ещё пока надо учится охотится на крыс...
Товарищи, как стать хорошим разработчиком? Как стать хорошим разработчиком под Linux (разумеется для встраиваемых систем)? Куда пойти работать, чтобы набить руку, чтобы научится! Как просто стать хорошим программистом и электронщиком, а не любителем?
Часто понимаю, что представление о проблеме есть, но я в ней плаваю. Вот взять даже те же AVR-микроконтроллеры. Я ими занимаюсь без малого 10 лет(!!!), много раньше
di_halt начал их мучать. А по сути, наверное только сейчас научился по быстрому писать прикладные програмки. И то, по быстрому - это два дня, хотя я считаю, что на разработку небольшой программы для AVR микроконтроллера надо тратить 2-3 часа, и день на отладку.
В терзаниях
И тут вы уволились, разместили резюме на суперджоб. И о ЧУДО! вами заинтересовались, да не просто там абы кто, а сам Samsung! Пригласили на собеседование аш на две вакансии. Радостно собираешься, бежишь, весь из себя супер-пупер крутой программист...
...
....
... два часа планомерно ты понимаешь, что ты нихера не знаешь в программировании, а если что-то и знал, то в эти два часа ты забыл напроч, Linux ты не знаешь совсем. Да, совсем, даже не представляешь что это такое, и чувствуешь себя так, что ты нафиг сюда пришёл...
Второй раз иду валить мамонта, и второй раз понимаю, что мне ещё пока надо учится охотится на крыс...
Товарищи, как стать хорошим разработчиком? Как стать хорошим разработчиком под Linux (разумеется для встраиваемых систем)? Куда пойти работать, чтобы набить руку, чтобы научится! Как просто стать хорошим программистом и электронщиком, а не любителем?
Часто понимаю, что представление о проблеме есть, но я в ней плаваю. Вот взять даже те же AVR-микроконтроллеры. Я ими занимаюсь без малого 10 лет(!!!), много раньше
В терзаниях
no subject
Date: 2012-08-06 08:37 pm (UTC)Занимался и микроконтроллерами и радиоэлектроникой. Однако с 2006(официально по документам, до этого начинал с БК/zxspectrum ну вообщем типичная история поколения родившегося в начале 80-х) года я разработчик. Меня не волнует что должен знать программист для Samsung,
я вероятно не пройду собеседование в ЕПАМ. Не потому что я тупой, а потому что я умнее :) Все дело просто в прикладной области и опыте, желании пахать,
общении c людьми умнее меня.
Так что не скулите товарищ ! Лопату в руки и на мины :)
no subject
Date: 2012-08-06 08:46 pm (UTC)no subject
Date: 2012-08-06 08:56 pm (UTC)я считаю что у меня вышло потому что:
- я читал все что попадало под руку/пробовал/писал/ошибался
- я попал в окружение профессионалов которые дали мне основы
- у меня не было выхода. потому что я не понимаю половинчатых решений. из за этой дебильной черты характера я не принимаю компромиссных решений (типа: ну и хрен с ним почти работает !).
У меня осталось куча недостатков типа нехватки теоретических знаний по некоторым областям, но я просто выделяю время и грызу.
P.S.
Гнусмас - не стоит того чтобы терзаться. Это типичная аутсорс мясорубка низкого пошиба с идиотскими манагерами и дебильными проектами.
no subject
Date: 2012-08-07 04:50 am (UTC)Вот этого мне и нехватает...
no subject
Date: 2012-08-06 08:41 pm (UTC)Чтобы изучить линукс, надо просто-напросто поставить генту :-)
no subject
Date: 2012-08-06 10:44 pm (UTC)начать с классики, в особенности Greg Kroah-Hartman (https://github.com/gregkh), многое есть в паблике, есть русский перевод (естественно хреновый).
http://shop.oreilly.com/product/9780596005658.do
http://shop.oreilly.com/product/9780596100797.do
http://shop.oreilly.com/product/9780470343432.do
дальше осиливать коренные изменения, произошедшие с времени написания книг (2005-2008) до текущего момента. простых путей нет, вообще нет. совсем.
"Куда пойти работать, чтобы набить руку, чтобы научится!"
никуда, нубы нигде не нужны, проверено собой. иногда, очень редко, в местных конторах по перепродаже девайсов в духе iconbit/3q/moveo бывают вакансии для новичков. в основном там задачи уровня впилить поддержку кнопки или портировать/бэкпортнуть какой-то драйвер для устройства которое китайцы поставили на плату, но в пакете поддержки от разработчика они положили на этот девайс. в итоге плата работает на половину. и таких случаев от китайцев просто тонны.
самый простой способ - читаем книги выше, чешем репу, размышляем. берем ближайший ембеддед девайс, для меня это планшетники/медиаплееры, пытаемся раздуплятся в то как китайцы пишут для себя драйвера (не самый классный пример, парни весело втыкают самые разнообразные костыли и подпорки, но это пример быстрых современных разработок), попутно ловим в них баги и убираем костыли, получаем опыт отладки и понимание как оно работает. со временем допиливаем все.
ближайший пример для A10 - https://github.com/amery/linux-allwinner/commits/wip/linux-3.4-sunxi/plat товарищи переносят системные вещи из machine-варианта в platform-вариант, каким он и должен быть. у тебя как раз есть mele на A10. там еще много бранчей с разными фиксами.
еще хороший способ - участвовать в опенсорц проектах, например я притесался к проекту по запуску android 4 на планшетнике с процессором Renesas EMMA EV2 который у меня валяется без экрана, в итоге с нами связались разработчики (не производители-фабрики) планшета и помогают схемами и всякой инфой. еще я пнул самих работников Renesas, найдя их в коммитах в ядро, тоже готовы помогать. основная проблема в том что то что они предоставляют сильно нарушает GPL... например приватный срез их git'а, который если расшарить можно получить по балде. такие дела.
все выше написанное - суровое имхо и не претендует ни на что.
no subject
Date: 2012-08-07 04:51 am (UTC)Хорошо, спасибо за ИМХО и за пруфы
no subject
Date: 2012-08-06 10:52 pm (UTC)Может, тебе углубиться во что-то одно и пахать ровно на это? Например, определиться конкретно чего ты хочешь, например, "хочу программировать на таком-то языке вот такие вещи под такую систему", идешь и батрачишь сначала на архитектуру того, подо что собираешься писать, что-то пишешь, копаешься на гитхабе, смотришь что народ уже пишет и как, потом, уже с пониманием системы, фигачишь свое, поглядывая в чужие исходники(там костыли, да, но ты сам костылей наделаешь еще бо́льших, по себе знаю, подглядывать полезно, особенно, если комментарии в коде есть))). Потом фигачишь сложные вещи, собирая кучу граблей и обучаясь на этом.
Когда будет что-то одно, но крепкое за плечами, то можно параллельно уже вытягивать что-то еще. Ты будешь понимать принципы и тебе будет сильно проще. Например, встраиваемые системы — ты будешь досконально понимать что и зачем там нужно, если освоишь полную систему. Причем, как показывает практика, книжки полезны только на начальном этапе. Я не знаю профессионала, который учился только на книгах. В книгах дается база, прямо как в институте. Если ты прочитаешь много книг, то есть шанс стать неплохим теоретиком. Теория без практики мертва.
Ты пишешь "по-быстрому прикладные программки"... не надо бояться брать на себя большие задачи, разбирать их на более мелкие куски и решать. Меня, например, на больших задачах сначала берет паника, потом начинаю делать и втягиваюсь, переключаю мозг, документация осваивается сильно проще, продумывать что-то сильно проще. Плюс, у тебя в резюме будет "вооот такая крутая большая штука, которую я написал".
И когда делаешь какие-то большие задачи, не надо бояться, что "аааа, блин, весь день и я накоммитил всего 20 строк, включая changelog". У меня такое было, да. Бо́льшая часть времени тратится именно на обдумывание задачи. А строки стираешь, потом правишь, потом снова стираешь(мой сегодняшний коммит - 26 строк, притом, что я стерла 20 и написала 2, вместо них)... Наработаешь навык и дальше пойдет быстрее.
К тому же, если ты чувствуешь, что "плаваешь", идти в самсунг пока рано просто потому, что там тебе нельзя будет задумываться, как писать код — будет куча задач, чтобы втянуться в существующую инфраструктуру и разобраться в текущей архитектуре. К тому же, у таких больших контор, вместо нормального кода, такой ахтунг бывает в некоторых местах, что просто пипец-пипец. Не стоит надеяться на то, что тебя научат писать там код, программировать под контроллеры и т.д. С другой стороны, такие компании любят брать молодых еще специалистов, у которых маловато знаний, но они умеют думать. На собеседовании дается много задач чисто на подумать и посмотреть ход твоих мыслей. Часто, на некоторые задачи нет правильного ответа. У меня вообще было стойкое ощущение, что собеседование в Яндекс я провалила. Вот только мне потом сказали, что я была офигенна.
Попробуй просто определиться, в чем ты хочешь развиваться и пойти в относительно мелкую компанию, где не будет шизанутого цикла производства\разработки, но и не в НИИ(в котором ты проработал пару лет и понял, что вышел невостребованным или неспециалистом).
Прости, что я на примере кода и линуксов привожу аналогии, но в контроллерах я ноль полный, а такие аналогии и ты сможешь понять и я смогу рассказать. Ну и не сочти за капитанство. ;)
no subject
Date: 2012-08-06 10:52 pm (UTC)no subject
Date: 2012-08-06 10:53 pm (UTC)no subject
Date: 2012-08-07 04:53 am (UTC)no subject
Date: 2012-08-07 01:55 am (UTC)как и везде: много практики, много поставленных практически достижимых (и достигнутых!) целей.
работать, работать и работать (с)
no subject
Date: 2012-08-07 04:53 am (UTC)no subject
Date: 2012-08-07 02:24 am (UTC)Rabotu poluchat' i byt' specialistom 2ve raznye veshi
no subject
Date: 2012-08-07 03:38 am (UTC)Но скажу проще - надо работать. До состояния, когда задача снится. Притом не из-под палки, а чтобы перло. Если не прет - занимаешься чем-то не тем.
no subject
Date: 2012-08-07 05:07 am (UTC)no subject
Date: 2012-08-07 04:02 am (UTC)no subject
Date: 2012-08-07 05:07 am (UTC)Плюс, можно стать не рыбой, а несколько другой субстанцией, которая тоже плавает.
Хочется воспитать в себе ответственного суперпрофи.
no subject
Date: 2012-08-07 06:09 am (UTC)no subject
Date: 2012-08-07 06:07 am (UTC)Сначала переживал, потом как-то привык. Это нормально. Всё знать невозможно и всегда найдётся человек, способный завалить вопросами. Как дотошный препод на экзамене. Хотя больше половины того, что требуют, в реальной работе не пригождается.
no subject
Date: 2012-08-07 06:35 am (UTC)мне как-то раз 10 лет назадна собеседовании попался профессор университета... и хоть я и знал, что он там будет, все равно ничего не смог сделать против "экзамена на 45 минут в режиме 30 секунд на вопрос" :)
no subject
Date: 2012-08-07 06:49 am (UTC)no subject
Date: 2012-08-07 06:52 am (UTC)волею судьбы через 6 лет после того провального собеседования я попал на эту фирму, правда, в другой отдел
теперь точно знаю, что тот тип "с комплексами"
no subject
Date: 2012-08-07 06:33 am (UTC)не нужен фирме уровня самсунга готовый специалист! НЕ-НУ-ЖЕН! они его сами себе выучат... а нужен человек, способный обучаться, и если они ищут готового, то фигня это, а не вакансия, "отмыв
баблалюдей", это значит, что на вакансию у них уже есть кандидат, но им нельзя брать его без конкуренции, вот и валят всехкак-то так вот...
no subject
Date: 2012-08-07 06:54 am (UTC)могу только удачи пожелать.
no subject
Date: 2012-08-07 09:03 am (UTC)Определись, куда хочешь идти:
- linux embedded
- bare metall programming
- dsp
- плис
- схемотехника
- радио
это все совершенно разные специализации и это только то, с чем я сталкивался лично. Нужно выбрать что-то одно, потом проанализировать рынок и начинать с малого.
no subject
Date: 2012-08-07 07:12 pm (UTC)no subject
Date: 2012-08-08 08:57 am (UTC)no subject
Date: 2012-08-08 04:15 pm (UTC)no subject
Date: 2012-08-08 05:02 pm (UTC)no subject
Date: 2012-08-08 05:29 pm (UTC)no subject
Date: 2012-08-09 08:39 pm (UTC)no subject
Date: 2012-08-08 12:15 am (UTC)no subject
Date: 2012-08-08 12:51 pm (UTC)это в копилку участия в опенсорсе.
Скажу из личного опыта, уже на три работы у меня получилось устроится после предварительного волонтерства/оказания бесплатной помощи.
Подобным поведением, ты даешь нормальному работодателю разглядеть твои плюсы детальнее - мало кто хочет делать рисковые инвестиции _сходу_.
no subject
Date: 2012-08-09 08:39 pm (UTC)no subject
Date: 2012-08-18 02:48 pm (UTC)no subject
Date: 2012-08-18 02:52 pm (UTC)no subject
Date: 2012-08-18 02:56 pm (UTC)Из хуавея не писали :(
no subject
Date: 2012-08-18 03:01 pm (UTC)"Но годы бегут, а я ничего из себя не представляю. Юнашеская бравада не спасает уже, и не ценят только за максимализм. " у меня эта бравада пока работает.. и кричать знаю то и то канает только вот лет в 25 это уже смешно.
no subject
Date: 2012-08-18 03:09 pm (UTC)1. Это давить на английский и до 25-ти брать бравадой.))) узкоспециализированные направления.
2. Выбирать область с самой большой выборкой вакансий и пройти 20-30 собеседований по теории вероятности попадет даже дуболом.
Первое для меня более интересно и в R&D я себя вижу. Но дисперсия бьёт и можно не попасть тупо из за отсутствия вакансий или случайности...
Второе менее интересно, но с прагматической точки зрения более выгодно...
no subject
Date: 2012-08-18 03:10 pm (UTC)no subject
Date: 2012-08-18 03:27 pm (UTC)no subject
Date: 2012-08-18 03:40 pm (UTC)Если нет даже такого понятия что же мне выбрать ты просто берешь и делаешь то это уже успех!
И не хватайтесь за все я тоже грешу этим и си я якобы знаю и то и се и в итоге ничего не знаю.
Но боже упаси не надо опускаться и приходить на собеседование и говорить я готов работать на деньги в два раза меньшие, но возьмите меня пока я не знаю ничего!
no subject
Date: 2012-08-18 03:47 pm (UTC)no subject
Date: 2012-08-18 05:36 pm (UTC)Нет, на собеседование я прихожу и стараюсь показать что знаю достаточно. Это весьма интересный опыт.