Периодически я заглядываю на хабр, и всегда нахожу там что-нибудь интересное. Может быть даже больше для себя, чтобы перечитать это через годик и снова вдохновиться, приведу тут ссылку на статью, которая хорошо откликается у меня.
Рядом с портретом Махатмы Ганди на картинке написано:
Счастье, это когда то
что ты думаешь
что ты говоришь
и что ты делаешь
находится в гармонии.
Автор статьи «Каково это — быть разработчиком, когда тебе сорок» программист-самоучка с отличным опытом. Я инженер-энтузиаст, с хорошим опытом. Что нас объединяет? Подход к делу!
Думаю что статья будет интересна всем людям инженерных специальностей.
Несколько мыслей, которые откликаются особенно сильно:
- Вышесказанное подводит меня к следующему пункту нашей беседы: разговору о том, как ваша любимая технология появилась на свет. Как родился ваш любимый C#? Вы знаете, кто его создал? Как создавался .NET? Кто был его ведущим архитектором? Какие у этого проекта были ограничения и почему язык стал тем, чем он является теперь?Примените этот шаблон к любому языку или CPU-архитектуре, которые вам нравятся и которые вы любите: Python, Ruby, Java, к любому языку программирования. Узнайте их происхождение и то, как они стали тем, чем являются сейчас. То же самое касается и операционных систем, сетевых технологий, аппаратного обеспечения, да чего угодно. Идите и узнайте, как люди придумали это, какими идеями руководствовались и как много времени потребовалось для того, чтобы их детище достигло зрелости. Потому что рождение хорошего программного обеспечения требует десятилетий, знаете ли.
- После того как вы изучили что-то новое — научите других. Это очень важно.Это не значит, что вы должны организовать целый учебный процесс, снять помещение и приглашать на свои курсы людей, чтобы они слушали ваш бред, нет. «Обучать других» — значит, к примеру, давать развернутые ответы на сложные и серьезные вопросы на stackoverflow (это было бы просто отлично). «Обучать других» — значит начать писать книгу, публиковать подкасты о вашей любимой технологии, вести блог, писать об этом в СМИ. Отправиться через полмира на другой континент, чтобы организовать кружок программирования на Raspberry Pi или банально помочь джуну или другому младшему разработчику, став его наставником (однако, не стоит этого делать, если вам еще нет 30 лет).Наставничество сделает вас скромнее, потому что продемонстрирует, как же мало вы на самом деле знаете и насколько ограничены ваши знания. Обучать — это лучший способ учиться. Только путем постоянной проверки собственных знаний вы учитесь правильно. Это вырабатывает в вас уважение к другим разработчикам и технологиям, ведь каждому языку, вне зависимости от того, является он мейнстримным или полузабытым, есть собственное место в Дао программирования. И только обучая других вы сможете почувствовать это.Через обучение вы сможете изменить мир к лучшему.
- Не ждите, что какая-нибудь софтверная корпорация предложит вам место, где вы сделаете карьеру. Возможно, это могло бы произойти где-нибудь в США, но я никогда не видел, чтобы подобное происходило в Европе. Это означает, что ваша карьера и успех зависят только от вас. Никто не скажет вам: «О, ну в следующем году вы сможете стать тимлидом, потом менеджером, ну а после техническим директором…»Ни. За. Что. Все, на самом деле, обстоит с точностью до наоборот: вы были, есть и будете разработчиком программного обеспечения. То есть, по сути, относительно дорогим «фабричным» рабочим, задачей которого является обеспечение своему менеджменту счастливой жизни где-нибудь в офшорной зоне вне зависимости от того, чего хочет он, рабочий, сам.Не беритесь за работу исключительно ради денег. Создание программного обеспечения поставлено на поток, в котором вы должны оправдать вашу абсурдно высокую зарплату за безумное количество рабочих часов и неоправданные ожидания. И, по крайней мере в случае Швейцарии, у вас нет профсоюза, который подставит вам плечо, если дела пойдут плохо. Да и то не все профсоюзы шевелятся, если ситуация не получила огласку в СМИ.
…
Всякий раз, когда HR-менеджер говорит вам, что «Вы должны сделать это (даже если это не согласуется с вашей моральной системой координат), потому что мы платим вам зарплату», стоит помнить, что правильным является следующий ответ: «Вы платите мне в обмен на мои мозги, и я отказываюсь выполнять этот приказ». - Проще — значит лучше. Всегда. Помните принцип KISS (keep it simple, stupid — буквально — «Делай это проще, тупица» или более вежливый вариант англ. keep it short and simple — «Делай короче и проще»). И я имею в виду не только пользовательские интерфейсы, а весь проект целиком, вплоть до самых глубинных уровней вашего кода.