Навички, необхідні для хорошої роботи в Linux [закрито]


14

Я працюю ІТ-інженером у відомій Індії. Проблема полягає в тому, що, хоч мені сказали, що мені дадуть роботу в Linux, я змушений працювати над Java та Windows. Мені незручно з Java і ненавиджу Windows.

Я почав самостійно вивчати Python, але важко приділяти йому достатньо часу через постійну роботу. Чесно кажучи, я не є експертом-кодером. Я багато намагався вступити в розробку ядра Linux під час коледжу, але зрозумів, що я не такий хороший кодер. Тому я вирішив зробити RHCE і піти на управління сервером.

Що я хочу знати, це те, що необхідний набір навичок, щоб отримати роботу в Linux-проектах. У серпні 2011 року я планую відпочити від роботи, якщо ця компанія не дасть мені гарного проекту Linux. Які навички я повинен здобути, щоб отримати хорошу роботу в Linux. Одне, що я вирішив зробити під час перерви, - це переслідувати RHCE. Прочитавши перший із набору трьох навчальних книжок RHCE, я впевнений, що зможу проплисти через нього.

Інформація експертів на цьому веб-сайті є надзвичайно цінною. Наразі мої технічні інтереси - програмування Python, програмування на C / C ++, управління сервером Linux та хмарні обчислення. Але ступінь коледжу, яку я маю, аж ніяк не є достатньою, щоб потрапити в якусь хорошу компанію. Я маю практичні знання не на рівні експертів. А досвід роботи у мене просто жалюгідний.

PS - Я надзвичайно розчарований у своїй нинішній роботі. Хоча я думаю, що це ледве потрібно згадувати про це.

Відповіді:


12

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

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

Інші проекти у верхній частині мого голову - це Джанго, Пілони, SQLAlchemy, хоча я думаю, що Меркуріал такий же хороший чи кращий, ніж будь-який із цих можливостей для участі в участі у програмі. Інша можливість - це робота з дистрибуції спільноти Linux, наприклад. з Debian, що також дасть вам можливість працювати з талановитими людьми. Також добре підходить для встановлення контактів тощо. Якщо ви зацікавлені в C ++, то проекти вподобань та навичок у Debian є важливими та суттєво недооціненими. Загалом, більшість проектів безкоштовного програмного забезпечення не мають достатньої кількості робочої сили, особливо менших, і прагнуть допомоги.


8

У вас є кілька шляхів, які пропонують різні можливості роботи

  • веб-речі
  • рідні проекти
  • розробка крос-платформ
  • перенесення до Linux

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

Веб-основа

Практично все, що базується на веб-сторінках, у яких не використовується .NET - це Linux (або крос-платформа). Ви можете сконцентруватися на будь-якій з широко використовуваних мов: PHP, Python, Perl, Ruby

Рідні проекти

Це в основному роботи з відкритим кодом або високоефективні обчислювальні роботи.

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

Високопродуктивна область є на зразок Linux тільки зараз, тому робочі місця в цій області, швидше за все, призведуть до Linux.

Цей район дуже важкий, має трохи C ++ та багато Java.

Розробка крос-платформ

Вид непарної площі. Є деякі компанії, які надають кросплатформенне програмне забезпечення, деякі мають спеціальні команди для конкретних платформ, деякі мають кросплатформові команди.

Але багато компаній просто використовують Java (не те, що вона дуже допомагає).

Перенесення до Linux

Ці роботи час від часу спливають. Деяка компанія бачить відкритий ринок і вирішує розширюватися. Я особисто втікав би від такої роботи.


+1 для цікавого коментаря. Ви хочете розширити питання про те, що так погано переноситься на роботу?
Faheem Mitha

1
@Faheem Добре, що перенесення завдань зазвичай означає, що ви отримуєте жахливу базу коду, повну нестандартних розширень та стандартних порушень (які, здається, працюють через чудо MSVC). Зазвичай частини коду пишуть люди, давно відійшли від компанії та переповнені різними помилками, які вискакують під час перенесення. Це може статися і в інших областях, але це не так часто (проекти з відкритим кодом, як правило, мають дуже жахливі бази коду, але не так багато великих проектів з довгою історією та спільнотою малих та середніх розробників).
Let_Me_Be

Я бачу. Ви в основному звертаєтесь до внутрішніх / власних баз коду вище? MSVC, що означає бази кодів C ++, записуються у Visual C ++, а потім вони хочуть перенести його на gcc?
Faheem Mitha

@Faheem C і C ++ найбільше страждають, найменше страждають мови сценаріїв. Основна проблема полягає в тому, що під час перенесення ви будете торкатися коду, який працює "тут і зараз" і зазвичай виявляєте помилки в такому коді.
Let_Me_Be

4

Один проект, який має дуже велику кількість кодерів, які виконують платні роботи, - це GNOME. Якщо ви їдете туди і займаєтеся дивовижною роботою, то, швидше за все, до вас хтось звернеться. Найбільший з них - це, мабуть, Red Hat (Fedora), і інші, які я бачив, включають Canonical (Ubuntu), Novell (SuSE), купу стартапів або навіть GNOME. О, і в проекті є багато використання Python, і число LOC, ймовірно, поступається лише C.

У планеті проекту , як правило , де ці «ГНОМ» компанії повідомляють про свої справи. Подивитися.


1

Я змушений працювати над Java та Windows.

Хороша новина, звучить так, ніби ви пишете / працюєте з кодом хоча б.

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

Це хороша вправа, щоб зробити додаток портативним.

Мені незручно з Явою

Не будьте, у світі Linux ви використовуєте найкращу мову для виконання завдання. (Найкраща безкоштовна мова принаймні).

Тому вам потрібно переконатися, що вам комфортно користуватися Java, C ++ / Qt, C, python, php, perl тощо тощо


Спасибі. Що ж, написання всього мого робочого профілю є нелогічним, тому я не згадував його повністю. тут. Але майте на увазі останній рядок вашої відповіді.
Дхарміт
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.