Що потрібно знати пасічникові

Вступ до технологій, або IT для початківців

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

Розповім трішки про себе. З 2004 року я почав працювати у сфері освіти в IT, ще будучи студентом Львівської політехніки. Я почав із викладання апаратного забезпечення та адміністрування операційних систем, тому що зрозумів, що викладання закріплює знання швидше, ніж навчання у виші. Зараз я Senior Test Engineer, консультант GlobalLogic, директор Tech School у LITS, і загалом я маю понад 12 років досвіду у комерційних проектах.

То з чого все ж таки почати?

У сфері інформаційних технологій можна виділити три основні ролі: програмісти, інженери з якості (тестувальники) та менеджери. Як правило, молоді спеціалісти розпочинають з позицій програмістів чи тестувальників, а менеджерами стають згодом.

Обираєте роль програміста?

Якщо ви поставили собі за мету вивчити якусь одну мову програмування і стати програмістом, відразу хочу вас попередити — цього буде недостатньо. IT — дуже динамічна галузь, і щоб залишатися конкурентоспроможним на ринку, потрібно вміти писати код різними мовами. Крім того, треба постійно слідкувати за змінами, трендами, новинками.

Вибір мов програмування загалом залежить від ваших уподобань. Якщо ви навчаєтеся на спеціальності «Комп’ютерна інженерія», або на чомусь схожому, скоріш за все ви вивчаєте C чи C++. Це хороший початок, хоч вам може здаватися, що ці мови складніші для вивчення, ніж інші. Однак, якщо ви будете знати на хорошому рівні хоча би одну із них, вам буде значно легше опанувати й інші. Та й можливості ваші будуть доволі широкими: C++, для прикладу, застосовується в написанні коду як для Linux, так і для Windows. Лабораторних у виші буде недостатньо, щоб опанувати цю мову на хорошому для практичного застосування рівні. Спробуйте порозв’язувати усі завдання з того джерела літератури, яке ви використовуєте, знайдіть додаткову літературу, безкоштовні онлайн-курси тощо.

Давайте коротко розглянемо ще декілька мов, які наразі не менш популярні (у контексті великої кількості вакансій), наприклад .NET і Java. Вивчаючи ці мови, потрібно детально ознайомитися з їхніми бібліотеками та використанням цих бібліотек. Java-програміст повинен добре володіти загальними принципами роботи родини операційних систем Linux. Також йому необхідні навички використання таких наборів готового функціоналу (фреймворків), як Spring та Hibernate. Для опанування ж .NET слід ґрунтовно ознайомитись із технологіями Microsoft та особливостями роботи родини операційних систем Windows. Зовсім не зайвим стане паралельне вивчення C#, ASP тощо.

Якщо хочете рухатися у популярному зараз напрямку веб-розробки (створення веб-сайтів), тут є декілька варіантів. Найчастіше зустрічаються такі типи веб-розробки, як front-end, back-end і full stack. Front-end (фронтенд) — це розробка візуальної частини сайту; це те, що ми бачимо, зайшовши на будь-який сайт. Цю частину іще часто називають клієнтською. Back-end (бекенд) розробка залишається «за лаштунками» візуальної частини. Код бекенду розміщений на сервері і відповідає за відправлення правильних даних у браузер для відображення на сайті. А full stack (фулстек) розробка об’єднує два описані вище типи, тобто фулстек-програміст має вміти писати код як фронтенду, так і бекенду.

Як ви вже могли здогадатися, мови програмування на фронтенді та бекенді — різні. Розробка фронтенду здійснюється на мовах, які живуть у браузері — HTML, CSS і JavaScript. Перші дві дуже прості, і про них можна знайти вдосталь інформації в інтернеті. А почати вивчати JavaScript, наприклад, можна з книги Девіда Фленегана (David Flanagan «JavaScript: The Definitive Guide»), розв’язуючи усі зазначені там практичні завдання. Також для того, щоб стати фронтендщиком, потрібно мати розуміння фреймворків (Bootstrap, Foundation, Backbone.js, AngularJS, EmberJS) та JS-бібліотек (jQuery and LESS).

Для бекенду потрібно знати якусь із серверних мов (а то і декілька): PHP, Ruby, Python, Java або .Net, а також вміти використовувати такі системи, як MySQL, Oracle та SQL Server для знаходження, зберігання, зміни даних, які потім відправляються у фронтенд. Ви також повинні на глибокому рівні розуміти, як працює браузер та як відлагодити (debug) код у консолі розробника. Загалом, дуже важливо постійно навчатись, цікавитися різними технологіями, новинками і пробувати їх застосовувати на практиці. Веб не стоїть на місці і існуючі фреймворки оновлюються раз на декілька місяців. Не менш часто можна зіткнутися і з появою нових фреймворків, які не слід боятися застосовувати. Знання нових методик може показати вас із вигідного боку.

А для загального розвитку кожному розробнику я рекомендую почитати книгу Стіва Макконнела (Steve McConnell «Code Complete»).

Віддаєте перевагу тестуванню?

Тестування програмного та апаратного забезпечення є другим за популярністю напрямом ІТ-сфери. Поріг входу на ринок у тестувальника (іншими словами, «інженера з якості» або «QA-спеціаліста») зазвичай нижчий, ніж у програміста, тому ця позиція така популярна серед усіх, хто вирішив перекваліфікуватись із іншої галузі.

Можна стати інженером, що проводить тестування вручну (Manual QA Engineer, скорочено: QA Engineer чи просто QA) або інженером, що автоматизує тестувальний процес — тестувальником-автоматизатором (QA Automation Engineer, Automation QA). Це означає, що він пише скрипт-код для тестів, які автоматично будуть перевіряти програму швидше, ніж людина.

Що саме потрібно знати та вміти, щоб стати Manual QA Engineer? Насамперед, потрібно мати ґрунтовну теоретичну базу технічних знань. До технічних знань відносять розуміння циклу розробки програмного забезпечення, видів та рівнів тестування, знання основних інструментів тестування. Тим, хто починає вчитися на інженера з якості, раджу почитати книгу С. Мюллера «Модернізація і ремонт ПК» (Scott Mueller «Upgrading and Repairing PCs») та Н. Оліфер і В. Оліфера «Комп’ютерні мережі» (Natalia Olifer, Victor Olifer «Computer Networks: Principles, Technologies and Protocols for Network Design»).

QA Automation Engineer — це вже наступна стадія професійного зростання. Крім навичок ручного тестування, QA Automation Engineer повинен володіти базовими навичками програмування на одній або декількох мовах (Python, JavaScript тощо). Зараз сфера автоматизованого тестування стрімко розвивається, тому це перспективний напрямок для QA-спеціаліста.

Який би шлях ви не обрали — програміста чи інженера з якості — однаково важливим є знання англійської мови на рівні Upper-Intermediate та вище. Проте не варто розчаровуватися, якщо у вас тільки Pre-Intermediate — цього може бути достатньо для початку.

Що потрібно, щоб спеціалізуватися у певному напрямку?

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

Програмування вбудованих пристроїв (embedded) — до прикладу, медичних апаратів, спортивного спорядження тощо;
Для початку тут підійде знання C/C++, загальне знання апаратного забезпечення та операційних систем.

Розробка програмного забезпечення для носимих пристроїв (wearables) — розумних годинників, фітнес-браслетів тощо;
Тут потрібні ті ж знання, що і для embedded-розробки, але додатково слід розібратися і в апаратному забезпеченні для носимих пристроїв.

Розробка мобільних веб-додатків (applications) для таких операційних систем, як iOS, Android, Windows etc.
Для того, щоб почати розробляти iOS-додатки, потрібно вміти писати код на мові Objective-C або ще краще — на Swift. Для розробки Android-додатків потрібно володіти Java, рідше — C/C++. Для Windows — C#, .NET.

Розробка програм для настільних персональних комп’ютерів — у цій сфері знадобляться знання C/C++, Python, Java (залежно від операційної системи), загальне розуміння структури операційних систем, основи знань про мережі.

Проекти зі сфери «Інтернету речей» (IoT = Internet of Things) — такі проекти передбачають тісну взаємодію між пристроями. Концепція «розумного будинку» є яскравим прикладом «Інтернету речей». Тут крім володіння мовами програмування потрібні ще базові знання мереж та їхнього апаратного забезпечення, розуміння мережевих моделей і мережевих протоколів.

А які перспективи спеціаліста у компанії?

Програміст чи тестувальник-початківець без практичного досвіду розпочинає свій шлях у компанії з позиції початкового рівня — це може бути роль Trainee (так вона називається у GlobalLogic, наприклад) або Intern. На цій позиції початківець перебуває від трьох місяців до року. За цей час майбутній спеціаліст із допомогою ментора та HR-консультанта адаптується до компанії, своєї ролі у ній, багато вчиться і здобуває досвід та необхідні навички для переходу на вищий рівень. Далі рух кар’єрними сходинками виглядає приблизно так:

Junior — Middle — Senior — Lead

Рівень Middle може мати назву Intermediate або Medior, а Lead — Leader.

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

У спеціаліста на позиції Lead з’являється можливість рухатися у бік технічної експертизи — бути Technical Lead (і стати Area Expert або Architect) або у бік менеджменту — бути Team Lead (і згодом обійняти посади Project Manager чи Delivery Manager).

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

Що ще я маю знати?

Робота на проекті передбачає не тільки написання коду і його тестування, але й взаємодію з іншими людьми — колегами у команді і замовником, — тому важливості набувають навички спілкування (як ділового, так і неформального), здатність легко знаходити спільну мову. Ці навички мають свою назву — soft skills, і на співбесіді рекрутери звертають увагу на те, наскільки кандидат ними володіє. Також цінується творчий підхід до роботи, хороші навички тайм-менеджменту (керування своїм часом), вміння правильно встановлювати собі цілі для особистісного зростання. Раджу пошукати статті на ці теми в Інтернеті, зараз їх є вдосталь.

Цього мало би бути достатньо для початку. Якщо ви добре мотивовані і у процесі навчання отримуєте задоволення — не зупиняйтеся, і ви неодмінно станете тим, ким хочете, і досягнете успіху!

Сторінка : Учись пасічникувати. 1925.pdf/7

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

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

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

Коли пасічник про все це буде знати, то й користь від пасіки матиме. А то нас здебільшого трапляється так: „Повчусь“ — каже селянин, купуючи десяток вуликів, та років десять учиться над нею, а пасіка не збільшується, а зменшується, иноді й зовсім переведеться. Це від того, що пасічник не знає своєї справи. А пасічництву треба вчитися, як всякому реместву та ще й більше, бо бджола жива істота.

Related Post

Чи можна купатися у Греції у березніЧи можна купатися у Греції у березні

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

Як дістатися з Сургута в Ханти МансійськЯк дістатися з Сургута в Ханти Мансійськ

Зміст:1 Проложенный маршрут от Сургута до Ханты-Мансийска1.1 Рассчитанный маршрут Сургут Ханты-Мансийск на машине1.2 Отели Ханты-Мансийска2 Квитки на автобус Сургут аеропорт – Ханти-Мансійськ2.1 Маршрут на карті2.1.1 Інші рейси в Ханти-Мансійськ2.1.2 Популярні