Обновить
27
0
Павел @Paveldpv

Семоучка

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

Как перестать «гореть» в операционке: мои 10 системных решений для предпринимателей

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

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

Я, как и многие, раньше по утрам видел только сотни уведомлений: «Подпишите документ», «Оплатите счёт», «Клиенту срочно нужна консультация». Однажды я понял: так не должно быть. Если ты постоянно тушишь пожары, значит, системы нет. А бизнес без системы — это хаос с доходами.

Читать далее

Как собрать первое портфолио: 5 настоящих историй

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

Привет, Хабр! На связи Friflex. Мы занимаемся разработкой мобильных приложений и веб-сервисов.

Во многих вакансиях работодатели просят прикрепить портфолио, чтобы оценить код, архитектуру проектов и направления, в которых работал кандидат. А что делать, если опыта работы еще нет? Роза Шархмуллина (Flutter-разработчик), Роман Галиновский (Flutter developer), Сергей Кочетков (Flutter Team Lead), Эрик Хадиков (Backend-разработчик) и Юрий Волковский (Frontend-разработчик) — о том, что они включили в первое портфолио и как бы действовали сейчас, случись им перенестись в прошлое.

Читать далее

Как сделать NeoVim самым удобным текстовым редактором: туториал по настройке

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

В этой статье затронем редакторы семейства Vi и разберем базовые сценарии работы с NeoVim. Начинающие специалисты смогут использовать материал в качестве туториала, а опытные разработчики, возможно, отметят для себя что-то новое.

Почему именно NeoVim? Всё просто: этот текстовый редактор сохраняет совместимость с Vim, но также предлагает дополнительные возможности и улучшенный интерфейс. Он позволяет более эффективно работать с кодом, а главное — настраивать редактор под свои нужды.

Читать далее

Я пытался устроиться айтишником, но что-то пошло не так…

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

Привет Хабр. Это очередная статья где абсолютно не знакомый парень будет рассказывать вам про то, с какими трудностями вам придется столкнуться при попытке устроиться на работу программистом (в моему случае на позицию Java Backend Developer (джун)). Сразу скажу что когда я говорю о программисте, я имею ввиду вполне квалифицированного и ответственного человека, а не вкатуна который вчера закончил курсы (хотя справедливости ради скажу что оттуда выходят адекватные специалисты).

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

Читать далее

Zustand в React

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

Управление состоянием в React — один из самых важных моментов при разработке приложений. Многие начинают с useState и useReducer, но со временем понимают, что для глобального состояния нужно что-то более мощное. Здесь хорошо подойдут Redux, MobX, Recoil и, конечно, Zustand.

Zustand (читается «цуштанд», в переводе с немецкого — «состояние») — это простая и мощная библиотека для управления состоянием в React, которая решает проблемы существующих решений.

Читать далее

Пять нужных кастом-хуков для React

Уровень сложностиСредний
Время на прочтение5 мин
Количество просмотров8.5K

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

Трудно представить код современного React-приложения без таких функций как useState, useEffect, useRef и так далее.

Однако, в повседневной жизни мы часто решаем рутинные задачи, многие из которых могут быть автоматизированы.

Создание кастом-хуков это прекрасная возможность выделить часто переиспользуемый код в отдельные сущности.

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

Ниже мы рассмотрим примеры некоторых из них.  

Читать далее

Самая важная компания китайского автопрома (и это не BYD)

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

Когда речь заходит про китайский автопром, обыватели вспоминают Geely, Chery, Haval, GAC, Zeekr, Li Xiang и другие чайнамарки, популярные на наших дорогах. Кто шарит чуть лучше - вспомнит про NIO, XPeng, Aito а также классическую китайскую "Большую четверку" (Dongfeng, FAW, SAIC и Changan). Совсем эксперты расскажут про Denza, Wuling, Deepal, YangWang и Leopard. Но про реального "серого кардинала" китайского автопрома не вспомнит почти никто. Хотя без него не было бы никакого китайского автомобильного чуда.

Эта компания называется CATL. Она делает батареи для львиной доли электромобилей и гибридов в Китае и за его пределами. В этой статье расскажу, как CATL прошёл путь от небольшого исследовательского бюро до стратегически-важного промышленного гиганта.

Читать далее

Проводим идеальное собеседование разработчика. Советы от практика с тысячей собеседований за спиной

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

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

Тестовое задание

Перед собеседованием можно добавить этап выполнения тестового задания. Хорошее тестовое задание должно быть максимально приближено к реальным задачам. Чтобы оценить навыки, можно предложить что-то объёмное, например, разработку небольшого, но полнофункционального сервиса. Важно, чтобы кандидат сделал всё самостоятельно и в кратчайшие сроки — это покажет, насколько он заинтересован в позиции. Если человек отказывается от тестового задания, это говорит о недостаточной вовлечённости.

Собеседование

Сколько человек должно проводить собеседование? Оптимально 3-5. Один интервьюер может что-то упустить, а вот группа сможет задать вопросы с разных точек зрения.

Читать далее

Одна React-задача, демонстрирующая ключевые навыки на собеседовании

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

Как всего одна небольшая React-задача помогает глубже понять уровень кандидата на собеседовании? Разбираем нюансы работы с хуками, асинхронностью, состоянием гонки и сайд-эффектами. На первый взгляд задача кажется простой - всего лишь компонент, загружающий данные по username. Но в процессе решения выявляются ключевые моменты: правильно ли кандидат управляет состоянием, учитывает ли смену пропсов, обрабатывает ошибки и предотвращает race conditions. Этот вопрос помогает не просто проверить знания, а увидеть, как кандидат рассуждает и принимает технические решения.

Читать далее

React Context

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

Всем привет! Меня зовут Андрей, я Frontend разработчик. На данный момент работаю на фрилансе. Имею достаточно хороший опыт работы с React.

Хочу рассказать, что такое React Context и как это можно использовать в проектах.
Попробую всё рассказать как можно проще.

Читать далее

Как организовать библиотеку книг в Obsidian

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

Делюсь своим опытом организации цифровой библиотеки книг в Obsidian с фильтрацией по жанрам, авторам и статусу прочтения.

Читать далее

Рецепты TypeScript: простое тестирование типов

Уровень сложностиСредний
Время на прочтение5 мин
Количество просмотров2.5K

Привет, это снова Костя из Cloud.ru! В своих последних статьях я делился рецептами довольно сложных типов. Например, рассказывал, как преобразовывать ключи объектов из snake_case в camelCase. Давайте представим, что вы воспользовались одним из таких рецептов. Как его поддерживать? И что скажет ревьюер, увидев такой код?

Сегодня в меню не блюдо, а ложка — покажу, как можно надежно тестировать типы и не бояться их менять, если это нужно.

Взять ложку

Прототипы в JS и малоизвестные факты

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

Лирическое вступление 


Получив в очередной раз кучу вопросов про прототипы на очередном собеседовании, я понял, что слегка подзабыл тонкости работы прототипов, и решил освежить знания. Я наткнулся на кучу статей, которые были написаны либо по наитию автора, как он "чувствует" прототипы, либо статья была про отдельную часть темы и не давала полной картины происходящего. 


Оказалось, что есть много неочевидных вещей из старых времён ES5 и даже ES6, о которых я не слышал. А еще оказалось, что вывод консоли браузера может не соответствовать действительности.

Читать дальше →

Рецепты TypeScript: перевод ключей объекта в camelCase

Уровень сложностиСредний
Время на прочтение4 мин
Количество просмотров6.2K

Всем привет! С вами снова Костя Логиновских — ведущий разработчик из Cloud.ru. Я уже делился TypeScript-рецептами в предыдущих статьях — вот первая и вторая — и теперь хочу рассказать про еще один. Наши рецепты — это готовый код, который можно применить в конкретных ситуациях, а в некоторых случаях и подогнать ситуацию под код.

Сегодня в меню — функция на обычном TypeScript, которая преобразует тип объекта так, чтобы все ключи внутри него из snake_case стали camelCase. Жду всех под катом!

Смотреть рецепт

Типизация свойства объекта в виде строки

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

Все так или иначе сталкивались с функцией или методом, который принимает объект и свойства в виде строки с которым нужно что-то сделать. Пример:

updateDate(user, "date");

И когда изменяется свойства объекта (user.dateuser.birthday), компилятор его нормально скомпилирует и мы лишаемся возможности отловить баг на стадий разработки.

Решить проблему

Книга: «Рецепты TypeScript»

Время на прочтение6 мин
Количество просмотров5.8K
image Привет, Хаброжители!

«Рецепты TypeScript» Стефана Баумгартнера – книга из серии «книг рецептов» O’Reilly. Такое название серии объясняется структурой этих книг: вместо бесконечных теоретических выкладок, сквозь которые продираться не то что нелегко, а попросту скучно, авторы предлагают погружаться в материал через «рецепты» – примеры реальных задач, которые сопровождаются лаконичными и понятными решениями и их подробным обсуждением – того, как автор к ним пришёл и почему они являются действенными. В этот ряд «поваренных книг» вписывается и та, о которой мы поговорим сегодня.
Читать дальше →

Неизвестно полезный CSS. Часть 6

Уровень сложностиСредний
Время на прочтение7 мин
Количество просмотров9.3K


Привет, Хабр. Я продолжаю рассказывать про неизвестные широкому кругу разработчиков CSS фишки. Я отбираю их так, чтобы они были полезны в разного рода проектах. Неважно, верстаете ли вы сайт для малого бизнеса или создаёте супермодное React приложение. Они поддерживаются большинством браузеров. Отдельно отмечу, что я не считаю IE11 современным браузером. По этой причине я не учитывал его.

Читать дальше →

Как найти хорошую работу в IT? Лучшие каналы и практики поиска в 2024 году

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

Последнее время всё чаще, когда речь заходит о карьере, говорят о том как правильно составить CV, презентовать себя, написать сопроводительное. Это безусловно база, без этого никак. 

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

Посмотрим глазами нанимающего, как это работает.

Читать далее

Разворачиваем приложение Next.js с базой данных PostgreSQL и задачей Cron на облачном сервере Ubuntu Linux

Уровень сложностиСредний
Время на прочтение10 мин
Количество просмотров6.6K


Привет, друзья!


Предположим, что у нас есть приложение Next.js, данные которого хранятся в Postgres, и мы хотим запустить его в продакшн, но не хотим использовать готовую инфраструктуру Vercel. Что делать? Создать собственную инфраструктуру. К счастью, сделать это не так уж и сложно.


Основные элементы нашей системы:


  • приложение, демонстрирующее несколько мощных возможностей Next.js 15
  • база данных Postgres для хранения списка задач, создаваемых/удаляемых в приложении
  • задача Cron для удаления из БД всех задач каждые 10 мин
  • приложение, БД и задача Cron функционируют в контейнерах Docker
  • контейнеры запускаются с помощью Docker Compose на облачном сервере Ubuntu
  • сервер Nginx для перенаправления запросов HTTP (обратного проксирования)
  • домен, привязанный к серверу
  • Certbot для получения сертификата SSL из Let's Encrypt и его установки для домена

Демо приложения.


Интересно? Тогда прошу под кат.

Читать дальше →

В чем польза мок-собеседований?

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

Неудачный опыт на собеседованиях может существенно снизить способность начинающего специалиста к прохождению собеседований в будущем, даже когда за плечами годы опыта. Мок-собеседования - это собеседования с ментором в безопасной среде. Они обладают всем атрибутами реального собеседования, но кандидат полностью контролирует процесс и получает подробную обратную связь.

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

Читать далее

Информация

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

Специализация

Frontend Developer, Fullstack Developer
JavaScript
React
TypeScript
Redux
CSS
Adaptive layout
BEM
SCSS
SASS
Express