Codica - корисне про IT
2.02K subscribers
2.47K photos
124 videos
11 files
1.32K links
Привіт, друже, це канал про корисності в ІТ🤘

🔺Даємо практичні матеріали з RoR, JavaScript, QA, DevOps
🔺Розкажемо як знайти першу роботу без хвилювань та проблем

✍️Для звʼязку-@klimenko_nataly

👉 Відкриті вакансії - www.codica.com/careers
Download Telegram
Тихого та спокійного ранку всім 😌

#codica_js
👍74
Що поверне такий код?
1е3 === 100
Anonymous Quiz
23%
true
40%
false
11%
NaN
16%
Станеться помилка
10%
Не знаю
6👍3
Шаблони проєктування мікросервісу 👀

▪️ Архітектурний шаблон - це узагальнене рішення поширеної проблеми в архітектурі програмного забезпечення.

▪️ Шаблон - це вирішення завдання.

👉 Архітектура мікросервісів застосовна в багатьох випадках, особливо коли використовується великий конвеєр даних.

Наприклад 👇
Мікросервісна архітектура - відмінний вибір для системи звітності про продажі в роздрібних магазинах компанії. Кожен крок у процесі підготовки даних буде оброблятися мікросервісом: збір, очищення, нормалізація, збагачення, агрегація даних, звітність і т. д.

#codica_tech
👍7🔥2
Жорсткі вимоги до себе – це добре чи погано? 🤔

#НапуттяВід_HR Директорки Клименко Наталії

💁🏻‍♀️ Ми з вами живемо у світі, де від нас чекають успіхів. А навіть якщо на них і не чекають, нам часто здається, що чекають. Бо звичка постійно підганяти себе вироблена з дитинства.

☝️ Якщо з дитинства нас хвалять, якщо ми дотримуємося правил, приносимо позитивні оцінки, слухняні та старанні, то поступово вимоги інших людей перетворюються на наші власні. І ми починаємо знецінювати свої досягнення та прагнемо бути найкращими у всьому!

👀 «А якщо я не вимагатиму від себе постійно досягнень, раптом я розслаблюся?»

👀 «Де межа між вимогливістю та здоровими амбіціями?»
👍74
Вибагливість до себе надмірна якщо 👇

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

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

- Чи можна припинити себе нещадно підганяти і при цьому давати результат, досягати необхідних цілей
- Так❗️

📌 Амбіції виступають потужним мотиватором, що змушує людину досягати поставленої мети. Жодна історична особистість - чи то Наполеон, чи Кеннеді - не була позбавлена ​​амбіцій. Цілком можливо, що історичного процесу взагалі не було б, якби серед людей не існувало амбітних особистостей. Психологи зазначають, що здорова амбітність (є і такий термін) підвищує особисту продуктивність і розвиває в людині такі корисні якості, як: працьовитість, витривалість, завзятість у досягненні цілей, прагнення самоосвіти, бажання розвивати здібності, здатність до подолання перешкод. Так що здорові амбіції – це потужний двигун, що дає потік мотиваційної енергії. Здорова амбітність сприяє самовдосконаленню та самореалізації.

Здорові амбіції це про👇

мені подобається моя робота, і я хочу і можу більше;
помилка – це досвід. Він буває у кожного;
моє оточення в порядку;
я в порядку;
я можу поєднувати роботу та відпочинок.

Будь-які дії з любові до себе приносять більше користі і не виснажують ❤️

А як ви реагуєте на невдачі? Лаєте себе? Чи здатні підтримати? 🙃

#НапуттяВід_HR
👍96
Найкращі CSS фреймворки для веб-розробки 🔝

☝️ Найпопулярніші CSS фреймворки пропонують багато переваг, як-от пришвидшення процесу розробки та найкращі крос-браузерні функції.

Що таке CSS фреймворк
CSS фреймворк — це бібліотека, яка полегшує процес розробки проєкту. Вся суть полягає в абстрагуванні та піднесенні загальних шаблонів проєктування CSS і проблем до класів для повторного використання.

👉 Його готові до використання класи підвищують продуктивність, вони дозволяють швидко створити прототип дизайну без написання CSS. Фреймворк уже виконав усю важку роботу за вас, відформатувавши крос-браузерний код для рішень, які вже вирішено.

#codica_advice
6👍4
Давайте почнемо з деяких найкращих фреймворків CSS і з’ясуємо, який із них найкращий для вас 😏

✔️ Tailwind CSS

Tailwind CSS є дуже популярним фреймворком: низькорівневий, корисний і надійний вибір. Сам фреймворк можна використовувати поступово або як основу для всього дизайну та інтерфейсу користувача.

Основні переваги Tailwind CSS 👇

🔹 Немає стилю або теми за замовчуванням.
🔹 Жодної нав’язаної структури чи шаблонів, лише класи CSS.
🔹 Має свій інтерфейс і бібліотеку елементів.

✔️ Bulma CSS Framework

Перспективна сучасна альтернатива великим CSS фреймворкам, як-от Bootstrap: простий у використанні та імпорті на ваш веб-сайт, без складного встановлення. Фреймворк вже з багатьма готовими компонентами, які можна налаштувати.

Основні переваги Bulma 👇

🔹 Сучасний синтаксис, який легко запам'ятати.
🔹 Сучасний дизайн на основі CSS flexbox.
🔹 JavaScript не потрібен, тому процес встановлення не складний.

✔️ Bootstrap

Bootstrap існує з 2011 року та постійно розвивається. Його започаткували розробники Twitter, згодом він перетворився на успішний фреймворк з відкритим кодом, улюблений багатьма. Він зосереджений на змішуванні HTML, CSS, SASS і JavaScript.

Головні переваги Bootstrap👇

🔹 Вертикальні та горизонтальні макети.
🔹 SASS.
🔹 Гарно задокументований.

✔️ Materialize CSS

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

Головні переваги Materialize CSS 👇

🔹 З відкритим кодом, розробленим Google.
🔹 Усі компоненти інтерфейсу користувача, які вам коли-небудь знадобляться.
🔹 Орієнтований на матеріальний дизайн.

✔️ UI Kit

UI Kit є одним із найкращих CSS фреймворків, якщо вам подобається прогресивний дизайн, де вам потрібно використовувати лише ті функції, які вам потрібні, ви не прив’язані до певного вибору дизайну. Багато CSS розробників обирають цей фреймворк через його простий у використанні API та сучасний вигляд.

Основні переваги UI Kit 👇

🔹Широкий вибір основних і розширених елементів інтерфейсу.
🔹 UI веб-редактор для зміни стилів і копіювання коду.
🔹 Легкий і модульний.

✔️ Milligram

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

Основні переваги Milligram 👇

🔹 Простий у вивченні та використанні.
🔹 Немає стандартного стилю, створіть свій власний з нуля.
🔹 Мінімалістичний і дуже легкий каркас.

Усі ці CSS фреймворки є хорошим вибором, але деякі з них розроблені для використання в певних ситуаціях 👇

Наприклад, якщо вам потрібні готові елементи та компоненти інтерфейсу користувача, то найкращим вибором є UI Kit, Bootstrap і Materialize.

Якщо вам потрібен фреймворк, який використовує більше корисних класів і менш примусовий стиль, Tailwind і Milligram є ідеальним вибором для цього.

#codica_advice
12👍6
Вітаємо з Різдвом вас, друзі

Хай буде казка за вікном і в душі. Бажаємо світлих надій та думок, щирої любові та віри, добрих чудес та людей у житті. Нехай ваше життя буде наповнене чудовими зустрічами, незабутніми спогадами і щирими людьми ❤️
23🥰8
Тримайте невеличкий дайджест новин від @Mister_Cody 📰

🧯Газові пальники, вимкнення електрики та генератори. Як вберегтися від пожеж під час блекаутів.

🧑‍💻 Більшість ІТ-компаній в Україні готові брати працівників без досвіду. Близько 86% ІТ-компаній в Україні співпрацюють або готові до найму людей, які мають мінімальний досвід або перейшли працювати в цю сферу з інших професій.

👀 «Хоч би не все українське ІТ перенесли до Польщі». Очікування айтівців від індустрії у 2023 році.

😳 «Я шукаю когось настільки дурного, хто візьметься за цю роботу». Маск шукає нового генерального директора для підтримки існування Twitter.

🤝 США допоможуть закрити українське небо комплексами Patriot. Деталі про них.

👨‍🏫 Як впровадити Agile в армії? Історія Дмитра Ярмака, який став командиром роти та використав IT-досвід в ЗСУ.
👍5🔥21
Codica - корисне про IT
Яку мову програмування обрати початківцю Частина 1 📌 Головна порада — обрати ту мову, для вивчення якої є достатньо матеріалів у відкритому доступі та яка має попит на ринку. 💁‍♂️ Серед мов, які найчастіше радять вивчати початківцям — JavaScript, Python…
Яку мову програмування обрати початківцю
Частина 2

📌 Вибір мови за призначенням

📲 Мобільні додатки

Більшість сучасних мобільних застосунків нативні або кросплатформні. Перші написані під одну конкретну платформу, а кросплатформні працюють на декількох, наприклад, на iOS і Android. Багато розробників на ринку мають досвід розробки під кілька платформ, проте «вузькопрофільні» спеціалісти теж високо цінуються.

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

Основа розробки застосунків під платформу iOS — Objective-C (побудований на C) і Swift. Вам знадобляться обидві мови.

#codica_tech
👍42
💻 Вебсайти

☝️ Орієнтуючись на веб-розробку, ви можете займатися бекендом (серверною частиною вебзастосунка), фронтендом (клієнтською або браузерною частиною), або ж стати full-stack розробником.

▪️Бекенд

Бекенд більшості сучасних сайтів написаний мовою PHP. Ця мова дуже проста у вивченні й застосуванні, нею написано більшість популярних рушіїв. PHP найчастіше вибирають для створення сайтів-візиток, корпоративних сайтів, інтернет-магазинів, проте ця мова також дає змогу створювати й більш складні рішення.
👉 Також для розробки серверної частини вебзастосунків використовують Python, Java і Ruby.

▪️Фронтенд

Основа фронтенд розробки — це HTML, CSS і мова програмування JavaScript. Саме на JS побудовані популярні фреймворки Angular, React, VueJS та інші, які активно використовуються в розробці сучасних вебзастосунків.
👉 Фронтенд розробники рекомендують починати навчання з HTML і CSS, потім вивчити JavaScript і тільки потім переходити до фреймворків, написаних цією мовою.

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

🖥 Десктопні застосунки

Більшість десктопних застосунків розробляється мовами C++, Java і Python.

👉 Java поступово втрачає свою привабливість для розробки застосунків для десктопу, а Python продовжує досить активно використовуватися. Мовою Python створюють як прості програми (наприклад, нотатки), так і більш складний софт (додатки для обробки графіки, торрент-клієнти та інші).

🕹 Ігри

Переважно ігри для ПК і консолей пишуть мовами C і C ++. Ось приклади популярних ігор, написаних цими мовами: GTA5, World of Tanks.
👉 Рідше використовуються Java і Python (найчастіше для RPG-ігор або для частини загального функціоналу, як це було в Sims 4).

Також актуальною є мова C#. Цією мовою розробляють ігри на рушії Unity.

🗄 Робота з даними, включно з Machine Learning

Робота з даними — це вельми популярний і перспективний напрям для сучасного розробника.
👉 Серед найбільш затребуваних мов для роботи з Big Data, а також для машинного навчання є Python, R, C++. Менш популярними, але не менш актуальними є Java, C#, MATLAB, Go.

Якщо ви з тих, хто хоче спробувати себе в різних сферах, то вибирайте універсальні мови програмування: Python, Java або C #. З ними ви зможете працювати на цікавих і складних проєктах, а також швидше змінити напрям 😌

#codica_tech
👍84🔥1
Нещодавно наш Tech Lead Максим Рубля побував на подкасті WorkАнуті, де обговорював, як поводитися на співбесіді, чого варто оминати та на що, навпаки, треба акцентувати свою увагу 😏

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

Гарного перегляду 👇

🔗 Огляд поганого і хорошого резюме | Codica & WorkАнуті

#codica_advice
🔥6👍41
Агов, народе! 👋

Шукаємо досвідченого Ruby on Rails розробника - інженера, який захоче сам прокачати свої скіли та допоможе нам підсилити експертизу.

Пропонуємо стати частиною потужної команди розробників, які підтримають і допоможуть швидко долучитися до роботи над масштабним проєктом для клієнта з Нідерландів.

Ремоут❗️

Коротко про нас: ми аутсорсингова сервісна компанія, яка займається створенням складних веб та мобільних додатків з нуля – від планування та реалізації до запуску.
👍4🔥3
Ближче до суті - що то за проєкт? 🤓

Проєкт має назву Dan.com - це сучасна платформа з купівлі та продажу доменних імен, розробкою якої ми займаємося пліч-о-пліч з нідерландською командою понад рік.

😏 Нещодавно компанія GoDaddy, яка є однією з найбільших реєстраторів доменних імен на ринку, придбала цей вебдодаток і вони мають наміри розширювати скоуп задач, саме тому ми знаходимося в пошуках ще одного колеги. Наразі, з нашого боку, над проєктом працює 14 спеціалістів, серед яких PM, декілька QA-інженерів, команди Back-End та Front-End розробників.

Під капотом у нас:

🧑‍💻 Для беку: Ruby 2.6+, Ruby on Rails 6+, PostgreSQL, Redis
🧑‍💻 На фронті юзаємо React та Typescript
🧑‍💻 На проєкті використовуємо Docker
🧑‍💻 Вся наша інфраструктура розташована на AWS - ми використовуємо такі сервіси як ECS, EC2, RDS, S3 і багато іншого

Переваги проєкту:

✔️ Робота з активною фазою живого проєкту і можливість бачити результати своєї роботи у продакшені
✔️ Можливість водночас працювати як з API, так і з монолітним додатком
✔️ Працюємо за TDD підходом (активна робота з тестами, повне покриття проєкту) - використовуємо Rspec, Capybara, Webmock
✔️ Робота з об’ємною БД
✔️ Проєкт має велику кількість реальних користувачів, які лишають відгуки, завдяки чому ми завжди покращуємо наші результати

Чим треба буде займатись:

Підтримкою поточного функціонала та оптимізацією наявних рішень
Розробкою нових фіч
Створенням інтеграцій з сервісами GoDaddy
І, народе, бувають дійсно складні кейси, тож цілеспрямованість - то маст хев 😉

Приклади фіч, над якими ми працювали, -
🔗 https://news.dan.com/209707-dan-com-product-update-4
🔗 https://news.dan.com/220185-dan-com-product-update-7

Чого потребуємо в майбутньому колезі:

➡️ Впевнені знання Ruby, Ruby on Rails
➡️ Комерційний досвід створення веб додатків на фреймворку Rails від 1-го року
➡️ Досвід роботи з API проєктами
➡️ Досвід написання автоматизованих тестів
➡️ Самостійність та відповідальність
➡️ Англійська мова на рівні листування із замовником

Однозначно буде плюсом:

➡️ Досвід з AWS (загальне уявлення про сервіси)
➡️ Досвід роботи з Docker

Що ми можемо запропонувати:

✔️ Персональне рев’ю 1 раз на 6 місяців, де ми чесно і по суті обговорюємо вашу кар’єру та фінансові перспективи
✔️ Систематичні 1-to-1 мітинги з ментором (раз на два місяці), на яких відбувається обговорення конкретних задач та найближчих перспектив
✔️ Активне прокачування культури написання коду і систематичне Code Review
✔️ Можливість брати активну участь в обговоренні кожного проєкту та всіх процесів загалом
✔️ Професійне та відкрите до пропозицій керівництво, яке завжди шукає шляхи покращення робочих процесів та умов
✔️ На 100% віддалену роботу
✔️ Постійну підтримку та допомогу один одному (зверніть увагу на відгуки про нас)

☝️ Ми не аутстафимо, тому по закінченні проєкту, ми не завершуємо співпрацю, а перемикаємо нашого колегу на інший проєкт. Ми не хапаємось за усі проєкти та ніколи не працюємо з токсичними клієнтами, а натомість самі обираємо, з ким хочемо стартувати спільну роботу.

Друзі, у нас є тестове завдання і нам дуже важливо подивитися на вашу реалізацію, щоб ми до кінця зрозуміли один одного 🙂

📫 З усіх питань пишіть на пошту - job@codica.com
🔗 Або в телеграм: @Vladyslava_Codica

💡 Бажаємо більше напруги у мережі та менше в роботі!
👍6🔥4
Рекомендації для прокачування знань QA Engineer💡

📌 Стаття від QA Lead Codica - Олексія
Частина 1

Збір, збереження і практичне відтворення експертизи є жвавим і безперервним процесом у сфері розробки програмних застосунків. Звісно ж, завжди присутня опція обмежитися спектром вже здобутих знань і на достатньому рівні виконувати свої поточні завдання.
💁‍♂️ Деякі люди свідомо обирають таку зупинку, бо їх цілком влаштовують створені умови, вони переконані в певному запасі актуальності власних знань і їм не дуже кортить “розхитувати човен”. Але більшість лишається амбітними, конкурентно спрямованими працівниками, які постійно розширюють спектр власних повноважень, а отже, і власну цінність.

#codica_tech
🔥5👍3
☝️ QA Engineer на початку свого шляху має чи не найбільш розгалужену й комплексну кар’єрну мапу: розвиток мануального напрямку, автоматизація, сек’юріті, перформанс (у великих компаніях ці напрямки становлять окремі вакансії). Варто також назвати можливості поступового переходу в менеджмент чи розробку, хоча ми їх не оглядаємо в цій статті.

😌 Загальною гарною ідеєю буде звертатися до вже готових роадмапів, викладених в інтернеті. Роадмапи, особливо свіжі чи стабільно оновлювані, являють собою агломерацію чужого досвіду, злінкований та впорядкований перелік знань та скілів, що їх варто принаймні серйозно розглянути, вибудовуючи власні кар’єрні плани. Ось приклад такої роадмапи, а ось іще один, хоча загалом ‘qa roadmap’ і так чудово гуглиться.

Ще однією рекомендацією для будь-якої теми є звернення до MOOC (Massive Open Online Courses). Такі платформи як Udemy чи Coursera пропонують безліч відібраних та скомпільованих знань, а їхня платність в певному сенсі підвищує рівень якості. До речі, якщо звертатимете увагу на Udemy, то варто знати, що там відбуваються масивні розпродажі чи не щотижня. Тож ви цілком можете знайти підходящі курси, зачекати кілька днів і взяти їх за цінником, скажімо, у $15 замість $85.

❗️Розвиток мануального напрямку, в першу чергу, базується на поступовому вивченні предмету вашої поточної розробки. Оскільки ви приходите на посаду QA Engineer із певними теоретичними засадами тестування, вивчення поля вашої діяльності зазвичай є органічним розвитком знань.

#codica_tech
👍5🔥4
💻 Веб-розробка передбачає опанування знань про влаштування цього самого вебу: модель OSI, модель TCP/IP, протокол HTTP, клієнт-серверна модель тощо. Тут стануть у нагоді веб-ресурси на кшталт GeeksForGeeks, MDN, guru99 і подібні. Причому варто розглядати їх саме як джерела — пов’язані між собою статті, серед яких слід навчитися вільно переміщатися в пошуках
важливої інформації.

👉 Ще одним вектором розвитку є базові знання про саму веб-розробку: HTML + CSS, опціонально JS та навіть якісь мови програмування з бекенд-частини типу Ruby, Python, .NET стаку тощо.

📎 HTML — це каркас будь-якої веб-сторінки, вам доведеться в ньому орієнтуватися і працювати з ним під час тестування веб-застосунків. CSS — це правила зовнішнього вигляду веб-сторінки, в яких вам теж доведеться розумітися, щоб мати змогу адекватно локалізувати дефекти з UI частини.

☝️ Мови програмування з вашої екосистеми розробки потрібні для поступового переходу від black box до grey box. Як би не хотілося цілком відсахнутися від розробки, базове розуміння імплементації, архітектури застосунку, проєктних рішень та принципів взаємодії компонентів суттєво підвищує ефективність тестування. Ви впевненіше практикуєте error guessing, бо вам стає доступним також і погляд розробника. Ви краще здатні орієнтуватися між фронтендом та бекендом, а отже, одразу ставите коректні питання правильним людям.
🙂 Зрештою, ви будете здатні надати більше інформації в тікеті з дефектом, а отже спростите і пришвидшите його фікс.

🔖 Ресурси для вивчення базису залежать від стаку розробки, але загалом курси і онлайн-підручники з більшості мов легко знаходяться в інтернеті. Прикладом хорошого ресурсу для вивчення веб-розробки є TheOdinProject, блок Foundations.

📝 Паралельно з опануванням особливостей вашої сфери розробки і засобів цієї розробки, варто прокачувати навички роботи із Dev Tools до рівня вільного володіння більшістю табок. Саме в Dev Tools знаходиться величезний пласт унікальної інформації, яку без вашого допису розробнику доведеться шукати та перевіряти самотужки. Вивчення Dev Tools варто проводити паралельно з опануванням принципів вебу, структури HTML та правил CSS, тому що всі ці знання ви застосовуватимете саме тут. Уся HTML структура в табці Elements, усі стилі елементу та відступи в Styles, а кінцеві застосовані правила в Computed, фідбек від компонентів в Console, HTTP реквести та респонси в Network, локальна сесія в Application тощо.

✏️ Вивчати можливості Dev Tools можна за вичерпною офіційною документацією або пошукати лаконічно запаковані рутинні перевірки у гайдах типу цього.

🔎 Більшість веб-застосунків також оперують з API — роблять виклики до зовнішніх публічних та мають власне API в якості функціонального аналогу чи взагалі ядра. Вміння працювати з API тісно переплітається зі знанням HTTP, реквестів та респонсів, кодів статусу, методів запиту тощо. Зазвичай, вивчаючи HTTP, важко оминути поглядом ці теми, статті посилаються на них або містять цей матеріал в собі.

👀 Тема роботи з реквестами та респонсами взагалі є одним зі стовпів при роботі в веб-розробці. Це ключова для розуміння концепція, яка потім також виллється у необхідну передумову для сек’юріті, перформанс та ряд інших типів тестування. Тому отримати базові навички роботи із реквестами в Postman, а також уміти моніторити їх в Dev Tools -> Network, вміти “прочитати” їхню структуру і вловити сенс є ключовими вимогами за бажання рухатися далі.

#codica_tech
👍5🔥4😁1
Доброго ранку та спокійного дня всім 🙂

#codica_js
👍73
Що буде виведено у консоль
Anonymous Quiz
32%
4
15%
16
11%
8
15%
-4
26%
Не знаю
👍6🔥5