Автор Гілка: Де linux програмісту шукати роботу?  (Прочитано 3481 раз)

Відсутній Сашко Кравчук

  • Графоман
  • ****
  • дописів: 490
  • Карма: +0/-0
  • Debian GNU/Linux
Мої вітання!

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

Мені найбільш цікавими наразі є C, C# (mono) та Python. На скільки я розумію:
-- С у комерції використовується переважно для написання системного програмного забезпечення, що мене _дуже_ цікавить, але я не маю достатньо знань, в основному через відсутність практики.
-- C++ -- <чоловічий статевий орган>ня, замість неї в якості С-подібної ООП мови обрав C#.
-- C#/Mono ще не не цікавить софтверні компанії так, як скажімо, Java.
-- Python -- чудова кросплатформова мова для швидких методологій розробки програмного забезпечення, яка мені дуже подобається, але через якийсь час я почав розуміти одну річ: що більше я пишу на Python`і, то гіршим програмістом стаю, бо перестаю розуміти елементарні і в той же час, фундаментальні речі.

Власне, ось питання: де мені з такими заморочками шукати роботу? Чи варто забити на Mono, і взятись за вивчення на Java, котра мене чомусь не дуже приваблює (наразі важко сказати чому)?

Головні умови дві:
-- Лише Linux!
-- Треба, щоб я міг рости професійно (тому мені трохи не подобаються Python та Java).

Ну, отаке... Я міг надто погано викласти свої думки, і надто багато вимигати від комерційних структур. Прошу мене вибачити, я ще молодий і наївний. Дякую!
« Змінено: 2008-04-11 16:43:10 від Cthulhu »

Відсутній Cthulhu

  • Кореспондент
  • ***
  • дописів: 183
  • Карма: +0/-0
Re: Де linux програмісту шукати роботу?
« Відповідей #1 : 2008-04-11 17:06:38 »
Мені найбільш цікавими наразі є C, C# (mono) та Python. На скільки я розумію:
-- С у комерції використовується переважно для написання системного програмного забезпечення, що мене _дуже_ цікавить, але я не маю достатньо знань, в основному через відсутність практики.
-- C++ -- <чоловічий статевий орган>ня, замість неї в якості С-подібної ООП мови обрав C#.
C++, яким би він не був - стандарт де-факто для велетенського класу задач у галузі. І нерідко воно переплітається з C. Я кажу не про найпопулярнішу студентську мову програмування (пересінедоплюс), а про реалізацію низькорівневих задач на C в рамках одного API. C++ можна не знати, C слід знати всім і обов'язково.

-- C#/Mono ще не не цікавить софтверні компанії так, як скажімо, Java.
Жартуєте? Mono, може, нікого крім Мігеля не цікавить, а от віста написана на C# (перебільшую, звісно, але не сильно). В природі існують гігабайти бидлокоду на C# під вінду. Я, звичайно, маю на увазі дотнет.

-- Python -- чудова кросплатформова мова для швидких методологій розробки програмного забезпечення, яка мені дуже подобається, але через якийсь час я почав розуміти одну річ: що більше я пишу на Python`і, то гіршим програмістом стаю, бо перестаю розуміти елементарні і в той же час, фундаментальні речі.
Рекомендую сеанси терапії на http://haskell.org/ А так пітон рулить. Та й интирпрайзу на ньому пишуть багато.

Власне, ось питання: де мені з такими заморочками шукати роботу?
Та всюди! :D

Чи варто забити на Mono, і взятись за вивчення на Java, котра мене чомусь не дуже приваблює (наразі важко сказати чому)?
Хороша ідея. І те, і друге. А жабокодером завжди можна влаштуватись.

Головні умови дві:
-- Лише Linux!
Місце роботи то не місце для фанатизму... Але якщо у вас достатньо нахабства, то без проблем знайдете таку роботу, яка вам подобається.

-- Треба, щоб я міг рости професійно (тому мені трохи не подобаються Python та Java).
Залежить виключно від вас.

M: щодо C++ - по суті абсолютно згоден, але таких слів краще тут не вживати.

Відсутній Taras

  • Новачок
  • *
  • дописів: 0
  • Карма: +0/-0
  • Що новенького?
Re: Де linux програмісту шукати роботу?
« Відповідей #2 : 2008-04-12 00:49:14 »
Доброго дня панове. Якщо ніхто не заперечує - вкладу і своїх 5 коп. Яко хтось вважеє С шарп і взагалі дотнет як за неповноцінне середовище, - той дуже помиляється. Наведу декілька прикладів:
1. Мій товариш багато років дуже непогано програмував на С++, він вважав що кращого вже не придумати. Але коли постало питання про гроші, то чомусь швиденько перейшов на С# і зараз переконує у цьому всіх. Працює він у софтовій конторі у Ньюйорку, і отримує за 1 год. роботи більше 100 УО. Якщо хтось не вірить, можна без проблем перебігтись по сайтам з пропозиціями на рахунок роботи від американських фірм і переконатись у потребі програмерів на дотнеті.
2. Майкрософт взяв за мету створити щось наподобі Яви. І зараз ним у шарп вкладаються величезні інвестиціїї. І праві ті, хто бачить у вісті багато дотнету, і дуже не праві ті, хто думає, що це минеться. Мета Біла зробити шарп єдиним середовищем для розробників під різні системи.
3. На разі я беру участь у великому проекті по створенню кросплатформенного ПЗ. І весь код постійно проходить тестування як під ОС вінда, так і під лінухом у моно. На початку року моно було версії 1.29, на разі вже версія 1.9. Його фінансують серйозні організації, ходять чутки, що навіть Гейтс приклав туда свої руки. І що я можу скзати на рахунок моно - на дотнеті під віндою програма може чудово працювати, а під моно виникають труднощі. Звичайно все можна списувати на недороблений моно, але коли починаєш розбирати код глибше, то одразу ж знаходиш некоректні операції, які вінда автоматично виправляє за програмістом, а моно - ні. Приклад, що був сьогодні: коли під віндою динамічно відловлюєш контест приладу для малювання графіки - все чудово. У моно при тесті (частий ресайз форми) програма висне. Шукали усім відділом,  вирішення було у коректному вивільнені памяті від обєкту малювання на контролі. Вінда це робила сама, а моно при великій нагрузці вмирав. Поправили - і далі все чудово працює. Такі то пироги.
4. Фреймворк і моно не єдині, хто працює у даному напрямку, потративши небагато часу, можна знайти подібні проекти, під багато інших ОС. І саме цікаве те, що усі вони зараз бурхливо розвиваються.
5. Останнє )). Коли я ознайомився з проектною документацією на ПЗ, над котрим ми зараз працюємо, я (як програміст на С++) був шокований висотою думки )), і навіть не уявляв скільки часу і людських ресурсів це потягне. Але коли розпочались роботи по кодуванню так само був шокований універсалізмом і кількістю технологій дотнета. Там і система, і графіка, і БД, і мережі, і ВЕБ. І саме головне не потрібно нічого придумувати, бери мсдн і шуруй.

Так що хлопці робіть висновки. Люди хочуть заплатити помірні гроші за програму, яка буде робити все і буде в них завтра, а не через 10 років і по неймовірній ціні.

P.S.   Взагалі-то я буду писати, хоч на плоті. Тільки би мені за це платили ;))

Praporshic

  • Гість
Re: Де linux програмісту шукати роботу?
« Відповідей #3 : 2008-04-12 01:29:44 »
На цьому тиждні отримав завдання встановити на один з серверів mod_mono, щоб девелопери могли займатись переносом вже працюючого під IIS+MSSQL рішення на mono+(PostgreSQL|Oracle). Про якість самого проекту mono мені вдалося спостерігаючи його компіляцію у gcc. Гірше збирались лише мої власні поробки.
Чого вартий проект, розробники якого не можуть навіть написати нормальний spec, за яким можна буде зібрати RPM під RHEL5 (збирав на його клоні - Oracle Unbreakable Linux release 5 update 1)? Врешті решт, я таки спромігся запустити те диво, але відняло воно набагато більше часу, ніж воно варте. До того часу я вважав Java відвертим тормозом та дико незручним (для адміністратора, та іншого обслуговуючого персоналу) інструментом.

Що стосується аргументів пана Тараса, то я з ним мушу де-що не погодитись.
1. 100 уо за годину роботи - нормальна заробітна платня для Нью-Йорка, якщо робота не постійна а за викликом. Я у Дніпропетровську беру за годину роботи лише 20, але співвідношення зарплатні у галузі не треба забувати. До того ж, я не програміст а адміністратор.
2. Вже не один раз відверто невдалі проекти виживали завдяки вдалому маркетингу. У той час, як кращі не могли знайти грошей на існування. А грошей у дрібном'яких так як і маркетологів.....
3. От Ви вже навели чому їм краще не користуватись. Якщо одна версія фрейморка робить щось за програміста, а інша - ні, то технологія вже не є переносимою. Це таке моє IMHO.
4. Але моно відстає від .Net, тому не може бути йому повною заміною. З іншими - ще гірше, як мені відомо.
5. Хм.... десь я таке вже бачив.... А, ну звісно ж! Perl + CPAN! І не треба далеко ходити. Та й швидкість роботи приблизно однакова (особливо якщо навчитись отримувати від perl байт-код Perl).

Не можу не підтримати Cthulhu у тому, що знати C треба обов'язково. Наразі я не зможу написати майже нічого на C++, і зовсім нічого на інших мовах (окрім Perl та bash), але день-два на повторне прочитання Кернігана та Рітчі і я писатиму на C потихеньку дивлячись у документацію з API використаних бібліотек. Після того як я був змушений таки хоч трохи вивчити С в мене зникли проблеми з розумінням Perl (іншим не користуюсь, бо не всюди воно є).

Інший бік програмування - ООП. Я його відверто не міг зрозуміти десь роки два. Зараз, вже де-що зрозумівши та інколи ним користуючись можу сказати: не таке вже воно й гарне. Усього лише один з методів вирішення задачі, який має як недоліки, так і переваги. Є чудові великі проекти де обійшлися без об'єктів, а є відверті монстри, де об'єктами спотворили усе, що тільки можна і навіть більше.

А от про фанатизм раджу забути. Лише Linux - роботи може й не вистачити. А от якщо UNIX взагалі - то матимете можливість добре працевлаштуватись.

Відсутній Сашко Кравчук

  • Графоман
  • ****
  • дописів: 490
  • Карма: +0/-0
  • Debian GNU/Linux
Re: Де linux програмісту шукати роботу?
« Відповідей #4 : 2008-04-12 12:08:24 »
Перша за все усім щиро дякую за відповіді!

Попросив розповісти про нинішній стан ринку, а ви, як завжди, почали холіварити (і не треба виправдовуватись!).

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

Python, Java, .Net -- їй Богу, хороші речі, тільки, як я вже писав, вони туплять, і не намагайтесь довести мені протилежного, бо навіть якщо це не так, я мушу зрозуміти це сам.

Ага, і Linux. Ні, ним обмежуватись не хочу. UNIX 4ever!

Все, що я хотів би -- це бодай загальні рекомендації від людей, що вже крутяться у тому середовищі. Дякую!

Відсутній Володимир Лісівка

  • Адміністратор ЩОДО
  • Видавець
  • *****
  • дописів: 3820
  • Карма: +11/-0
  • Програміст
Re: Де linux програмісту шукати роботу?
« Відповідей #5 : 2008-04-12 21:06:06 »
2. Майкрософт взяв за мету створити щось наподобі Яви. І зараз ним у шарп вкладаються величезні інвестиціїї.
До .net мають стосунок три основні групи: інвестори, розробники і користувачі. Можна одне дуже тупе питання: хто буде відбивати всі ці інвестиції? Хінт: користувачі будуть користуватися .Net на халяву. ;-)

Цитата
3. На разі я беру участь у великому проекті по створенню кросплатформенного ПЗ. І весь код постійно проходить тестування як під ОС вінда, так і під лінухом у моно. На початку року моно було версії 1.29, на разі вже версія 1.9. Його фінансують серйозні організації, ходять чутки, що навіть Гейтс приклав туда свої руки. І що я можу скзати на рахунок моно - на дотнеті під віндою програма може чудово працювати, а під моно виникають труднощі.
Ми пишем на Яві. У нас нема проблем (Linux,Win32,MacOSX). Дякую за підтримку. :-)
[Fedora Linux]

Praporshic

  • Гість
Re: Де linux програмісту шукати роботу?
« Відповідей #6 : 2008-04-13 14:32:59 »
Перша за все усім щиро дякую за відповіді!
You are welcome!

Попросив розповісти про нинішній стан ринку, а ви, як завжди, почали холіварити (і не треба виправдовуватись!).
Про стан розповіли. Виправдовуватись не збираюсь. Просто нагадаю хто перший почав:

-- C++ -- <чоловічий статевий орган>ня, замість неї в якості С-подібної ООП мови обрав C#.

Python, Java, .Net -- їй Богу, хороші речі, тільки, як я вже писав, вони туплять, і не намагайтесь довести мені протилежного, бо навіть якщо це не так, я мушу зрозуміти це сам.
За власним досвідом: туплять не мови, а невдалі методи їх використання.

Все, що я хотів би -- це бодай загальні рекомендації від людей, що вже крутяться у тому середовищі. Дякую!
Загальна рекомендація: у серйозних конторах позиціонування як UNIX-програміста починає цінитись усе більше. Причина: UNIX-програміст зазвичай не зіпсований MSDN-ом або вже вилікувався.

Відсутній Сашко Кравчук

  • Графоман
  • ****
  • дописів: 490
  • Карма: +0/-0
  • Debian GNU/Linux
Re: Де linux програмісту шукати роботу?
« Відповідей #7 : 2008-04-14 10:44:00 »
Мені вчити Java?

п. Євгеній, я вже давно зрозумів, що Ви умієте користуватись "повноваженнями", але питання було до розробників, а не адміністраторів (вашу компетенцію під сумнів ніхто не ставить) з бодай якимсь досвідом крутіння у тому середовищі. І, як завжди, усі потранділи ні про що, і відповіді, звісно ж, не дали! Головне -- це випендритись, і похоліварити, а не допомогти, чи не так?
« Змінено: 2008-04-14 10:50:57 від Olexandr_Kravchuk »

Praporshic

  • Гість
Re: Де linux програмісту шукати роботу?
« Відповідей #8 : 2008-04-14 12:30:11 »
Мені вчити Java?
НМД - так. Нормальних програмістів не вистачає.
п. Євгеній, я вже давно зрозумів, що Ви умієте користуватись "повноваженнями", але питання було до розробників, а не адміністраторів (вашу компетенцію під сумнів ніхто не ставить) з бодай якимсь досвідом крутіння у тому середовищі.
Якщо Ви до мене, то я Сергій ;). Досвід розробки також маю: ANSI C, Perl, php. Досвід "крутіння у середовищи" - з червня минулого року. Не багато, але достатньо щоб зрозуміти що й куди. Завдання на роботі: підтримка та налаштування комплексів розробки ПЗ, допомога розробникам у створенні ПЗ під конкретну платформу з можливим втручанням у код.
І, як завжди, усі потранділи ні про що, і відповіді, звісно ж, не дали! Головне -- це випендритись, і похоліварити, а не допомогти, чи не так?
А як на мене - так дали відповідь і не одну. Хоча зміст відповідей приблизно однаковий: забити на моно та замінити його жабою.
« Змінено: 2008-04-14 12:33:28 від Praporshic »