Как стать автором
Обновить
30
0
Виталий @VitalyCherkov

Frontend-тимлид

Отправить сообщение

CMS за 0 рублей: как мы начали использовать Strapi

Время на прочтение16 мин
Количество просмотров12K

Всем привет! Меня зовут Александр, я фронтенд-разработчик в KTS. Сегодня я расскажу о системе Strapi, разберу сценарии ее использования на конкретных примерах и поделюсь способами упрощения работы в ней.

Читать далее
Всего голосов 41: ↑41 и ↓0+44
Комментарии8

Не JavaScript’ом единым: как фронтенд-разработчику затащить на собесе

Время на прочтение16 мин
Количество просмотров19K

Привет! Меня зовут Виталий, я тимлид в KTS, и за годы работы я провел больше 100 собеседований.

Кто-то на собеседовании от вас может ожидать знание 50-го аргумента функции callKek(), но это не мой подход, потому что в реальной жизни глубокого знания JavaScript не всегда бывает достаточно, а отдельные его тонкости и вовсе пригождаются крайне редко.

В статье я расскажу о своем подходе к найму сотрудников и поделюсь множеством рекомендаций тем, которые стоит изучить.

Читать далее
Всего голосов 54: ↑54 и ↓0+56
Комментарии30

Ручная отладка мобильного фронтенда с нуля до PRO за 30 минут

Уровень сложностиПростой
Время на прочтение18 мин
Количество просмотров16K

Привет! Меня зовут Виталий, я фронтенд-тимлид в KTS.

В статье расскажу об инструментах для отладки и ручного тестирования фронтенда на мобильных устройствах. Этот туториал в первую очередь пригодится фронтендерам и ручным тестировщикам.

В статье рассмотрим несколько способов, которые позволяют исследовать работу фронтенда на мобильных устройствах. Расскажу про удобства и ограничения каждого из способов отладки ниже:

• В responsive mode браузера на компьютере

• С помощью эмуляторов iOS и Android

• На физическом iPhone и Android-устройстве через USB

• С помощью Browserstack

Читать далее
Всего голосов 31: ↑31 и ↓0+31
Комментарии0

Сохраняем кластеры Kubernetes в чистоте и порядке

Время на прочтение9 мин
Количество просмотров14K

Одновременно с ростом кластера растет количество ресурсов, volume и других API-объектов. Рано или поздно вы упретесь в потолок, будь то etcd, память или процессор. Зачем подвергать себя ненужной боли и проблемам, если можно установить простые — хотя и довольно изощренные — правила? Вы можете настроить автоматизацию и мониторинг, которые будут содержать кластер в аккуратном состоянии. В статье разберемся, как избавиться от лишних нагрузок, через которые утекают ресурсы, и устаревших накопившихся объектов.

Читать далее
Всего голосов 12: ↑12 и ↓0+12
Комментарии10

Как разработчикам начать вести Телеграм-канал

Время на прочтение5 мин
Количество просмотров4.5K


Меня зовут Александр, я руковожу backend-разработкой в КТS. Мы разрабатываем сложные высоконагруженные сервисы для крупных корпораций и рекламные спецпроекты.

У нас есть Телеграм-канал «Программисты делают бизнес». Мы ведем его недавно — первый пост вышел в декабре 2020 года.

В статье рассказал о том, зачем мы начали вести канал, как придумывали темы, начали делать посты и оптимизировали процессы. Тут обо всем, от начала до результата, что есть сейчас.

Читать далее
Всего голосов 13: ↑11 и ↓2+9
Комментарии3

Как проводить собеседования объективно и с пользой

Время на прочтение10 мин
Количество просмотров19K

Всем привет! Меня зовут Виталий, я ведущий фронтенд-разработчик в KTS.

Полтора года назад я начал участвовать в найме новых сотрудников: проводить собеседования и оценивать навыки кандидатов.

В статье поделюсь выводами за это время. Расскажу, как сделать результат собеседования объективным, а процесс — более комфортным для кандидата и интервьюера.

Читать далее
Всего голосов 14: ↑12 и ↓2+14
Комментарии30

Пишем свой Google, или асинхронный краулер с rate limits на Python

Время на прочтение11 мин
Количество просмотров14K

Меня зовут Александр, я руковожу backend-разработкой в КТS. Сегодня расскажу, как написать асинхронный краулер.

Такая задача часто встречается на практике, когда нужно реализовать периодическую синхронизацию/обкачку между сервисами. 

Статья написана по мотивам вебинара, который мы провели в рамках нового курса «Асинхронное программирование на Python для начинающих». Курс стартует 18 октября, поэтому, если вам интересно — загляните посмотреть.

Что будет в статье:

1. Цель
2. Исходный код
3. Планировщик
4. Задача для краулера
5. Пробный запуск
6. Промежуточный итог
7. Функции put и join
8. Semaphore
9. Остановка фонового планировщика
10. Работа краулера на примере обкачки нашего блога на Хабре
11. Заключение

Читать далее
Всего голосов 7: ↑6 и ↓1+5
Комментарии5

Создание мини-игры «Шкатулка» с помощью JS + CSS

Время на прочтение10 мин
Количество просмотров6.7K

Привет!

Меня зовут Сергей, я фронтенд-разработчик отдела спецпроектов KTS. Наш отдел занимается разработкой веб-приложений для промокампаний.

Год назад перед нами встала задача: сделать игру-квест с диалогами, 360-панорамой, drag-n-drop, звуками и мини-играми.

В этой статье расскажу про последнюю часть: как сделать мини-игру со звуками с помощью react, styled-components, mobx и howler.

Надеюсь, материал будет полезен начинающим реактивным разработчикам.

Читать далее
Всего голосов 13: ↑12 и ↓1+13
Комментарии2

От тестов до IDE в браузере: как мы разрабатывали систему проверки студентов для онлайн-школы

Время на прочтение9 мин
Количество просмотров2.4K

С 2018 года компания KTS проводит курсы для разработчиков и менеджеров. И в этом году мы решили запустить наши курсы на своей собственной платформе для онлайн-обучения (LMS).

В статье расскажем, как эволюционировали инструменты для проверки студентов на нашей платформе, и как мы пришли к системе запуска IDE в браузере для выполнения домашних заданий.

Читать далее
Всего голосов 8: ↑8 и ↓0+8
Комментарии0

Первые шаги в aiohttp, часть 3: публикуем приложение в Интернете

Время на прочтение8 мин
Количество просмотров7.3K

Сегодня разберем заключительную часть цикла «Первые шаги в aiohttp». В первой статье мы создали и настроили проект, а во второй подключили базу данных.

В этой части статьи мы рассмотрим размещение нашего веб-сервиса в Интернете, используя платформу Heroku.

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

Читать далее
Всего голосов 5: ↑5 и ↓0+5
Комментарии0

Первые шаги в aiohttp, часть 2: подключаем базу данных к приложению

Время на прочтение16 мин
Количество просмотров23K

Привет!

В прошлой статье мы познакомились с aiohttp и написали на нем свое первое веб-приложение: стену с отзывами.

В этой статье мы продолжим изучение и подключим к нашему приложению базу данных PostgreSQL, используя для этого Gino, SQLAlchemy и Aiopg, а также автоматически сгенерируем и применим миграции с помощью Alembic.

Если вам интересно асинхронное программирование, приходите к нам на курс в KTS, где мы гораздо подробнее разберем эту тему.

Читать далее
Всего голосов 10: ↑10 и ↓0+10
Комментарии12

Игра с голосовым управлением на React и Phaser

Время на прочтение10 мин
Количество просмотров5.4K

В апреле 2020 года перед отделом рекламных спецпроектов KTS встала непростая задача: разработать игру-раннер с управлением голосом в браузере.

В этой статье я расскажу, как мы делали этот проект, какие технические решения принимали, какие технологии использовали и с какими проблемами сталкивались.
При разработке мы использовали TS + React + MobX и Phaser в качестве игрового движка.

Читать далее
Всего голосов 10: ↑10 и ↓0+10
Комментарии1

selectel-exporter — экспортер для manage-баз данных

Время на прочтение4 мин
Количество просмотров2.4K

Мы в KTS на многих проектах пользуемся услугами managed database от selectel. За этими кластерами нужно следить, и делать это хотелось бы из одной точки. Этой точкой у нас является prometheus, alertmanager и grafana. 

Из коробки у selectel нет prometheus exporter для manage-баз данных. Есть внутренние графики и мониторинг, но использовать их затруднительно. Поэтому мы написали свой selectel-exporter, который использует selectel API.

В статье расскажем, почему решили его написать и расскажем, что он умеет.

Читать далее
Всего голосов 10: ↑9 и ↓1+11
Комментарии2

Метакласс — школа от KTS

Время на прочтение8 мин
Количество просмотров3K

Привет!

В KTS мы уделяем особое внимание наставничеству и росту разработчиков. С самого создания компании старшие разработчики преподавали в ВУЗах — МГТУ им. Баумана, Московский политех — и в 2018 году мы решили сделать собственную школу разработки.

В этой статье мы хотели бы рассказать о новом потоке бесплатной школы на примере курса «Начинающий React-разработчик» и поделиться интервью со студентом — а теперь и нашим разработчиком — который аж два раза учился в школе.

Читать далее
Всего голосов 1: ↑1 и ↓0+1
Комментарии0

Создаем текстовый редактор на React.js

Время на прочтение17 мин
Количество просмотров41K

Привет! Меня зовут Данила, и я фронтенд-разработчик в KTS.

Однажды в одном из своих проектов мне потребовалось реализовать кастомный текстовый редактор на React.js. Задача показалась мне довольно интересной, и я решил рассказать о своем опыте. В статье я поэтапно покажу, как можно создать текстовый редактор с базовыми функциями.

Надеюсь, информация будет полезной и сэкономит кому-то время и силы.

Читать далее
Всего голосов 16: ↑15 и ↓1+15
Комментарии10

Пятёрочка — Интегрируй меня полностью

Время на прочтение23 мин
Количество просмотров10K

Мы в KTS делаем проект для Пятерочки – новый личный кабинет сотрудника. Продукт объединяет уже существующие сервисы и автоматизирует бизнес-процессы, которые раньше выполнялись вручную.

Над личным кабинетом работает много команд, поэтому нужен удобный механизм параллельной разработки модулей-микрофронтендов. Мы попробовали три способа встраивания: iframe, NPM-пакеты и Webpack Module Federation. В статье анализируем преимущества и недостатки каждого из них и рассказываем, почему переходили от одной технологии к другой.

Поехали!
Всего голосов 10: ↑10 и ↓0+10
Комментарии10

Первые шаги в aiohttp

Время на прочтение6 мин
Количество просмотров87K

Привет, меня зовут Артём. Я работаю бэкендером в KTS и веду курсы по разработке в KTS Metaclass. Заметил, что труднее всего студентам даются темы по асинхронному программированию.

Основываясь на своём преподавательском опыте, я написал туториал, рассказывающий о создании базового aiohttp-сервиса с нуля и затрагивающий самые сложные для студентов вопросы: как сделать асинхронное python-приложение, как работать с базой данных и как разложить свой проект в интернете.

Это первая статья цикла, в ней мы напишем небольшое веб-приложение на aiohttp  — стену с отзывами, где каждый может оставить свое мнение о каком-то продукте.

Погнали!
Всего голосов 2: ↑2 и ↓0+2
Комментарии6

Собираем свою библиотеку для SSR на React

Время на прочтение14 мин
Количество просмотров7.5K

Привет, меня зовут Сергей и я фронтендер в KTS.

Server Side Rendering часто применяется в разных проектах. Существуют крутые фреймворки для React – NextJS и Gatsby. Но в то же время любой фреймворк диктует архитектуру приложения, а это приводит к проблемам в больших приложениях. Поэтому часто можно встретить собственные сборки для SSR.

В статье описаны шаги создания собственной библиотеки для серверного рендеринга на React.

Читать далее
Всего голосов 7: ↑6 и ↓1+6
Комментарии5

Как мы сетапили монорепозиторий с SSR и SPA для Otus.ru

Время на прочтение10 мин
Количество просмотров4.3K

В начале 2017 года в KTS поступила задача - реализовать платформу для онлайн-образования Otus.ru.

От нас требовалось как можно быстрее собрать портал, на котором можно было бы посмотреть информацию о курсах. Сделать MVP нужно было как можно быстрее, а современные фронтенд-фреймворки были еще не распространены. Поэтому фронт писался на vanilla js + jquery. В 2020 году мы решили перепроектировать и полностью переписать сервис на React.

В этой статье мы расскажем, как засетапить монорепозиторий с SSR и SPA приложениями на React на примере Otus.ru

Читать далее
Всего голосов 10: ↑8 и ↓2+6
Комментарии0

Вавилонская башня из миллиона печенек. Как мы делали игру в VK mini app

Время на прочтение12 мин
Количество просмотров4.1K

Весной 2020 года KTS вместе с командой спецпроектов ВКонтакте придумали концепцию и механику игры к 5-летию Oreo в России.

Задумка игры заключается в том, что пользователь может свайпать по экрану, а за каждый свайп ему начисляются баллы - печеньки Oreo, которые падают друг на друга и образуют высокую башню.

В этой статье мы расскажем про визуальную составляющую (почти)бесконечной башни на TS + React + MobX + react-spring + styled-components и как мы решали задачи отображения и оптимизаций, чтобы добиться максимально плавного игрового взаимодействия.

Как мы это сделали
Всего голосов 14: ↑14 и ↓0+14
Комментарии0

Информация

В рейтинге
Не участвует
Откуда
Москва, Москва и Московская обл., Россия
Работает в
Зарегистрирован
Активность