JavaRush /Java блог /Random UA /Кава-брейк #12. Стереотипи, яких програмісту краще позбут...

Кава-брейк #12. Стереотипи, яких програмісту краще позбутися і навички, без яких не обійтися

Стаття з групи Random UA

Стереотипи, від яких програмісту краще відмовитись

Джерело: Freecodecamp Чи є у вас все те, що потрібно програмісту? Цілком ймовірно, що ваша відповідь буде ґрунтуватися на наборі стереотипів і помилок. Давайте розглянемо кілька речей, які, згідно зі стереотипами, мають бути у програміста, але насправді не обов'язкові. Кава-брейк #12.  Стереотипи, яких програмісту краще позбутися і навички, без яких не обійтися.

Особлива схильність

Забудьте про речі з розряду «добре мати». Люди, які хочуть стати розробниками, зовсім не обов'язково мають бути геніями чи навіть математиками. Вам не потрібно мати особливий склад розуму або якийсь особливий мозок. Програмування це навичка. Такий, як гра на гітарі або здатність пробігти марафон. Для вироблення цієї навички потрібно програмувати. Приділяти цьому час і витрачати сабо. Потрібно вчитися в інших. Це навичка, яка прямо залежить від того, скільки зусиль ви докладете.

Бути фахівцем з комп'ютерів

Програми пишуться на комп'ютері. Це правда. Тому комп'ютер, як не крути, для роботи вам буде потрібний. Але вам не обов'язково вміти збирати комп'ютер самостійно. Вам не потрібно розуміти його внутрішню роботу. Вам не потрібно бути людиною, до якої всі друзі звертаються з усіх проблем, що виникають із їхніми комп'ютерами. Звичайно, чим більше ви знаєте про свій інструмент, тим більше ви незалежні при виникненні якихось проблем із цим інструментом. Але ви цілком можете бути хорошим програмістом, не знаючи, як при цьому полагодити тітонький ноутбук.

Мати диплом з комп'ютерних наук. Мати диплом взагалі

Бути випускником університету, якщо вам пощастило там вчитися, це взагалі здорово. Бути випускником факультету інформатики ще краще. Але це абсолютно не потрібно для програміста. У сфері IT повно приголомшливих фахівців, які не мають вищої освіти (як профільної, так і будь-якої іншої). Поставивши собі за мету стати програмістом, ви цілком можете досягти її, не закінчуючи вуз.

Наявність найновішого комп'ютера та (або) дорогого софту

Я раніше думав, що, оскільки програміст пише програми для комп'ютерів, йому самому обов'язково потрібний найпотужніший і найпотужніший комп'ютер. Мені здавалося, що для розробки програм неодмінно потрібне спеціалізоване та дороге програмне забезпечення. Так само, як людям, які займаються дизайном або працюють із відео. Але потім я здивувався, усвідомивши, що все, що мені потрібне для створення мого першого сайту, це вже встановлений у Windows Блокнот. Блокнот!! Найскромніша та найнудніша програма. Найбанальніший і базовий текстовий редактор із усіх можливих. Так що так, щоб навчитися робити найпростіші речі, ви можете скористатися своїм старим компом, без будь-яких наворотів. А ось потім, для професійної роботи, знадобиться краща машина.

Хороший рівень англійської мови

Знання англійської вам знадобиться. Мови програмування винаходабо і розвивалися в англомовних країнах. Добре це чи погано, але англійська домінує у сфері розробки програм. Слова, які у мовах програмування, – англійські. Значна частина інструкцій та статей теж англійською. Отже, якщо у вас хороший рівень розуміння цієї мови, вона вам допоможе. Але якщо ви не знаєте англійську, це не повинно стати бар'єром, який утримує вас від вивчення програмування. Ви можете навчитися і стати хорошим фахівцем, маючи лише базовий рівень англійської.

Бути фанатом комп'ютерів. Бути геймером

Захоплення комп'ютерами це добре, захоплення іграми це чудово. Але ви можете стати частиною команди розробників, не захоплюючись комп'ютерами взагалі або комп'ютерними іграми зокрема. Нині вже не 90-ті, у цій галузі тепер працюють найрізноманітніші люди.

Бути інтровертом

Тут те саме. Немає ніякого особливого типу особистості, що найкраще підходить для цієї професії. Не треба шукати в собі якихось рис, які покажуть, чи підходить вам ця діяльність чи ні. Набагато важливіше ваше ставлення до справи. Ключовою складовою успіху є здатність переживати невдачі та наполегливо продовжувати свою справу. А це навичка, а не риса характеру.

Бути молодим

Щоб працювати у сфері ІТ, не обов'язково бути молодим. Щоб стати добрим програмістом, теж не обов'язково розпочинати цей шлях у юності. Я почав навчатися у 39 років і отримав свою першу роботу в 40. А крім мене є безліч інших людей різного віку, які теж успішно здійснабо такий перехід. Вчитися ніколи не пізно. І міняти кар'єру – також. Крім того, компанії, які прагнуть наймати виключно молодих людей, навряд чи є добрим місцем роботи.

Бути чоловіком

Це начебто очевидно, але сказати про це варто. Вам не обов'язково бути чоловіком, щоб стати програмістом. І хоча серед програмістів поки що переважають чоловіки, ситуація швидко змінюється. Гендерна приналежність ніяк не позначається на тому, наскільки хороший програміст вийде з людини. Немає жодної хромосоми або особливого устрою мозку, які забезпечують схильність до цієї професії. Вам просто потрібно вміти вирішувати завдання. Тільки і всього.

10 навичок, які має освоїти розробник у 2020 році

Джерело: Dev.to Якщо ви хочете досягти успіху в розробці, вам необхідно володіти навичками, які відрізняють новачка від middle-програміста. У цій статті я поділюся 10 навичками, з якими, на мою думку, вам потрібно ознайомитися цього року. Цей список у жодному разі не можна вважати повним, але він дасть вам хорошу відправну точку для подальшого навчання.

1. Контейнери (Docker та Kubernetes)

У 2020 році кожен програміст, інженер-розробник, data scientist і навіть team-lead повинен знати про контейнери, такі як Docker та Kubernetes. З їхньою допомогою ви не тільки зможете тестувати програми в єдиному середовищі, але й спростіть процес їхнього розгортання. Завдяки Docker ви можете швидко розгорнути програму з усіма засобами підтримки залежностей, і вам не потрібно турбуватися про масштабованість. Контейнери роблять це автоматично. Якщо ви вивчите Docker та Kubernetes, ви станете більш затребуваним фахівцем.

2. Хмарна платформа (AWS, Google Cloud або Azure)

Крім контейнерів, хмара – це ще одна річ, яку має знати кожен розробник та data scientist у 2020 році. Великі та малі компанії все частіше переводять свої дані у хмару, задля економії коштів та покращення масштабованості. Тому вам рано чи пізно все одно доведеться працювати з хмарними платформами. Крім того, без них ніяк не обійтися у сфері розробок data science, машинного навчання та штучного інтелекту. Тільки хмара може забезпечити обчислювальну потужність, необхідну таких ресурсомістких моделей.

3. Структури даних та алгоритми

Якщо ви хочете стати програмістом, ви повинні добре знати структури даних та алгоритми. Тут уже без варіантів. Про них завжди запитують на будь-якій співбесіді. Крім того, без знання масивів, множин, зв'язкових списків, мапірування, вам буде неможливо написати програму.

4. Інструмент контролю версій (Git)

Ви повинні навчитися працювати з інструментами контролю версій, такими як Git та SVN. На щастя, Git та GitHub домінують на ринку, і оскільки понад 70% компаній використовують Git, ви можете обмежитись вивченням тільки цього інструменту. Але не забувайте, що вам доведеться ознайомитися з просунутими концепціями управління версіями, такими як розгалуження і злиття, а також з роботою в командному рядку і з використанням GUI.

5. Текстовий редактор

Не було жодного дня, коли б я на роботі не використав текстового редактора. Він залишається одним із найважливіших інструментів будь-якого програміста. В основному я використовував NotePad у Windows та VIM у Linux, але в даний час у вас є багато варіантів з розширеними редакторами, такими як Sublime та NotePad ++, які мають функції, подібні до IDE.

6. IDE (VSCode або IntelliJIDEA)

Для Java-програмістів є три основні IDE на вибір, такі як Eclipse, NetBeans та IntelliJIDEA. Я віддаю перевагу Eclipse, але і IntelliJIDEA зовсім непоганий.

7. Бази даних та SQL

SQL - це класика, ця мова існує вже більше 30 років, і я думаю, що ще використовуватиметься приблизно стільки ж. Враховуючи всюдисущість баз даних, від програміста очікують, що він уміє працювати з базами даних; знає, що також стандартизація та дизайн таблиць, а також знайомий із SQL. Існує багато баз даних, таких як Oracle, MySQL, Microsoft SQL Server, PostgreSQL і т.д. Достатньо знати хоча б одну. Також ви повинні вміти вставляти, оновлювати, видаляти дані та писати запити SQL для їх отримання.

8. UNIX (Linux)

Як і SQL, UNIX також витримав випробування часом. Оскільки значну частину часу програмістам доводиться працювати на комп'ютерах під управлінням UNIX, наприклад, на linux-серверах, хороше знання командного рядка Linux має велике значення.

9. Об'єктно-орієнтована мова програмування (C++, Java чи Python)

Звичайно, вам не обійтися без знання об'єктно-орієнтованої мови програмування, як-от C++, Java або, можливо, Python або JavaScript . Ви можете вибрати все, що захочете, але моя особиста пропозиція полягає в тому, щоб ви знали хоча б Java. З нього легко почати і тому він буде правильним вибором для новачка.

10. Основи роботи у мережі

У світі не можна обійтися без комп'ютерної мережі. Скрізь, де б ви не знаходабося, ви знайдете комп'ютерні мережі, починаючи від будинку, де ви використовуєте Wi-Fi, до школи, коледжу та офісів, де використовують локальну мережу (LAN). Більшість програм, які ви напишете, працюватимуть клієнт-серверним способом, коли запит передається по мережі на сервер. Суть у тому, що ви повинні розуміти основи роботи з мережею, щоб розробляти та підтримувати вашу програму.
Коментарі
ЩОБ ПОДИВИТИСЯ ВСІ КОМЕНТАРІ АБО ЗАЛИШИТИ КОМЕНТАР,
ПЕРЕЙДІТЬ В ПОВНУ ВЕРСІЮ