Pull to refresh
-2
0
Send message

Как построить работу над кодом

Level of difficultyEasy
Reading time3 min
Views14K

Чтобы всем было удобно его писать, обсуждать и рефакторить — без распухшего бэклога и лица девопса.

Мне кажется, что если спросить 10 случайных разработчиков о том, как у них в командах устроена работа над кодом, то в 9 случаев ответ будет «Ну, как придётся. Как привыкли!».

Это удивительно для отрасли, в которой есть настоящий культ менеджерских практик: по ним пишут книги, проводят конференции, им учат. Но редко когда учат практикам хорошей работы над кодом! В крайнем случае в команде найдется опытный лид или человек с хорошим системным мышлением, который при этом готов и помочь коллегам стать лучше.

Напомню вам базовые правила, с которых нужно начинать работу в этом направлении. Побуду вашим системным лидом на полчаса, так сказать!

Читать далее
Total votes 9: ↑8 and ↓1+10
Comments3

Кратко про NewSQL

Level of difficultyEasy
Reading time4 min
Views16K

Привет, Хабр! 🚀

NewSQL - это класс систем управления реляционными БД, представляет собой слияние преимуществ SQL-бд с инновациями, направленными на решение проблем масштабируемости и производительности.

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

Помимо базового SQL синтаксиса, многие NewSQL системы вводят дополнительные расширения, направленные на улучшение производительности Эти расширения могут включать в себя новые функции, процедуры и методы оптимизации запросов, которые традиционные SQL-системы не поддерживают.

В сегодяшней статье рассмотрим в общем виде то, что из себя представляет NewSQL

Читать далее
Total votes 15: ↑8 and ↓7+6
Comments9

Делаем RPG на Go: часть 0

Level of difficultyMedium
Reading time7 min
Views15K

Один из самых частых вопросов в нашем сообществе разработке игр на Go — это с чего начать.


В этой серии статей мы будем изучать движок Ebitengine и создадим RPG в процессе.


Читать дальше →
Total votes 32: ↑31 and ↓1+36
Comments8

Самый простой способ обхода блокировок доступа к сайтам любых стран

Level of difficultyEasy
Reading time4 min
Views127K

Я понимаю, что пока, за использования VPN, аннонимайзеров и/или tor не применяют уголовные статьи, поэтому гораздо проще скачать какое нибудь приложение из магазина приложений и бесплатно воспользоваться им. Но где гарантия, что завтра они будут работать?

Я понимаю (программисты, сисадмины, DevOps'ы и т.д.) данный способ нельзя назвать уникальным, оптимальным и вообще, так лучше не делать, но согласитесь - это достаточно простой способ туннелирования трафика, который позволяет обойти (если не все), то огромное количество разнообразных сетевых блокировок.

О туннелирование через SSH на хабре написана не одна статья, но в виде инструкции, которую можно дать любому домохозяйкеину (ведь в рф запретили феминитивы) лично я не нашел. Поэтому добро пожаловать подкат.

Так же, этот способ - достаточно дешевый (меньше чашки кофе в день) и очень быстрый с точки зрения реализации (буквально 5 минут).

Интересно?

Читать далее
Total votes 90: ↑61 and ↓29+49
Comments412

Как за 30 минут улучшить свое резюме?

Level of difficultyEasy
Reading time3 min
Views22K

Если вы читаете это, то скорее всего, поиск нового (или даже первого) места работы вызывает стресс, требования в вакансиях на HeadHunter кажутся невыполнимыми,
а свое резюме не то что не хочется никуда отправлять — есть желание никогда его не открывать.

На старте карьеры каждый испытывает все эти чувства. Давайте начнем немного менять ситуацию с последнего пункта — резюме!

Да, мы не сможем за 30 минут повысить ваш опыт работы на 3 года, но даже в банальном оформлении своего резюме многие делают (или не делают) достаточно странные вещи.

Перейдем к пункту 0...

Меня зовут Дмитрий Иванов, я старший аналитик данных компании билайн, и первое правило хорошего резюме — это простота. Пока мы не идём на позицию ТОПа или вице-президента, давайте оставим излишний формализм за пределами того PDF-файлика, который вы будете рассылать рекрутёрам.

0. Пишите просто и понятно

Не надо делать делать из мухи (3 месяца работы в универской лаборатории) слона (оформить каждый тезис вашего курсача как отдельный научный проект). 3 месяца в лаборатории = 3 месяца в лаборатории. 

Читать далее
Total votes 29: ↑18 and ↓11+13
Comments22

Ноутбуки с двумя дисплеями становятся все дешевле: выпущена модель за $400. Возможности устройства

Reading time4 min
Views25K

За последние пару лет производители ноутбуков и смартфонов разработали устройства с гибкими дисплеями, а также двумя (и больше) экранами. Особо массовыми такие девайсы не стали, но своя аудитория у них уже появилась, судя по выходу все новых и новых моделей смартфонов с гибкими экранами. Ноутбуки с аналогичной технологией похвастаться такой популярностью не могут, но все же и здесь есть некоторые подвижки. Подробности — под катом.
Читать дальше →
Total votes 30: ↑27 and ↓3+34
Comments7

Зарплаты IT-специалистов во второй половине 2023: -15% за счет регионов

Level of difficultyEasy
Reading time5 min
Views186K

Пришло время снова смотреть, сколько зарабатывают IT-специалисты, а точнее — сколько им платили во второй половине 2023. 

Напомним, что каждые полгода мы на Хабр Карьере анализируем зарплаты в IT и отслеживаем изменения на рынке. В этот раз мы изучили 34 114 зарплат, приглашаем обсуждать результаты.

Медианная зарплата IT-специалистов сейчас — 141 000 ₽, это на 15% меньше, чем в первом полугодии 2023, когда рост был 10%. В основном на это повлияло снижение зарплат в регионах на 20%, где IT-специалистам сейчас платят в среднем 120 000 ₽. В Москве средняя зарплата — 187 000 ₽, а в Санкт-Петербурге — 150 000 ₽.

Смотреть зарплаты
Total votes 85: ↑80 and ↓5+110
Comments168

Найм в IT: как проходить собеседование, если у вас нет опыта в разработке

Level of difficultyEasy
Reading time7 min
Views20K

Привет! Меня зовут Игорь, я работаю в крупной американской компании. Ежедневно я получаю резюме на IT-позиции и замечаю что все больше кандидатов не имеют опыта в IT. Такие специалисты получают дополнительное образование (или заканчивают курсы) и смело отправляют резюме на десятки позиций в день. Сегодня мы поговорим о них подробнее.

Читать далее
Total votes 13: ↑1 and ↓12-11
Comments2

Программисты всё вымирают и вымирают

Level of difficultyEasy
Reading time18 min
Views130K

Да вымереть не могут.

Откуда это всё пошло? Чем так условные «программисты» не угодили? И почему именно программисты?

Читать далее
Total votes 335: ↑323 and ↓12+373
Comments583

Почему программисты через 10 лет будут не нужны?

Reading time9 min
Views127K
Это один из распространённых вопросов о судьбе программирования: мне не раз приходилось его слышать от журналистов, блогеров и родителей, чьи дети выбирают будущий вуз. Для меня этот вопрос звучит довольно удивительно: во-первых, 10 лет для программирования это не такой уж большой период, чтобы выпасть из обоймы, во-вторых, я пока не вижу никаких прорывных движений в этом направлении, в-третьих, мне не кажется что за 10 лет полностью исчезнут компьютеры или люди — а это два единственных условия для уничтожения программирования на планете. Между тем вопрос есть, он в топах поисковых запросов по теме, а значит, это жжжж неспроста. Давайте разбираться.


Disclaimer

Мы открываем в блоге RUVDS на Хабре новую рубрику — вопросы с поиска. Принцип прост: выбираем самые интересные и популярные поисковые запросы о программировании, технологиях, программистах и карьере в ИТ и отвечаем на них с помощью наших постоянных экспертов. Будет интересно.
Читать дальше →
Total votes 87: ↑61 and ↓26+63
Comments381

Эффективный поиск работы в 2024 в России как в IT сфере, так и за её пределами (глазами рекрутера)

Level of difficultyEasy
Reading time5 min
Views16K

Почему эту статью стоит прочитать?

За 4+ года работы в рекрутменте и совершенствования себя в профессии посредством поглощения невероятного количества информации, я увидел много советов и гайдов о не оптимальном пути поиска работы, а максимально эстетичном, правильном, удобном в первую очередь рекрутеру который дает совет (и его коллегам), но никак не самому соискателю.

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

Читать далее
Total votes 16: ↑7 and ↓9-1
Comments20

Несколько советов как новичкам не забросить изучение IT

Level of difficultyEasy
Reading time6 min
Views22K

Я создаю IT-курсы уже 6 лет, являюсь руководителем направления обучения Бэкенд-разработке в онлайн-школе и даже развиваю свои собственные курсы по программированию на Python. Еще веду корпоративные обучения, работаю в универе и провожу консультации о построении пути в IT.

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

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

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

Читать далее
Total votes 24: ↑18 and ↓6+12
Comments67

Книга «Продвинутые алгоритмы и структуры данных»

Reading time7 min
Views32K
image Привет, Хаброжители!

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

Вы постоянно сталкиваетесь с бесчисленными проблемами программирования, которые поначалу кажутся запутанными, трудными или нерешаемыми. Не отчаивайтесь! Многие из “новых” проблем уже имеют проверенные временем решения. Эффективные подходы к решению широкого спектра сложных задач кодирования легко адаптировать и применять в собственных приложениях, а при необходимости создавать собственные структуры данных под конкретную задачу. Сбалансированное сочетание классических, продвинутых и новых алгоритмов обновит ваш инструментарий программирования, добавив в него новые перспективы и практические методы.
Читать дальше →
Total votes 11: ↑10 and ↓1+12
Comments3

Как автоматизировать построение архитектурных схем в большой микросервисной системе

Level of difficultyMedium
Reading time8 min
Views19K

Если у вас есть большая система, состоящая из множества микросервисов, то вы наверняка задавались вопросом: «Что сделать, чтобы архитектурная схема всей системы была всегда на 100% актуальной?».

Обычно, в компаниях есть свои практики формирования архитектурных схем и ведения документации, что частично решает поставленный вопрос. Но проблема такова, что часто схемы со временем начинают расходиться с реальностью: новые интеграции добавляются, а старые — уходят, а актуализация схем вручную происходит не всегда своевременно.

Чтобы решить проблему мы автоматизировали отрисовку схем опираясь на метаданные IT-систем. Мы создали отдельный микросервис, который этим занимается и назвали его «Architect». О том как это происходит и как работает Architect я расскажу в этой статье, а также дам несколько советов, которые помогут внедрить то же самое у вас в компании.

Читать далее
Total votes 29: ↑26 and ↓3+25
Comments24

Где брать опыт начинающему разработчику: Open Source, стажировки и Pet-проекты

Level of difficultyEasy
Reading time6 min
Views6.9K

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

Читать далее
Total votes 8: ↑1 and ↓7-6
Comments8

Lifehacking: использование принципов программирования в жизни

Level of difficultyMedium
Reading time5 min
Views7.1K

Не секрет, что роботы и умные машины — это всего лишь воплощение неких концепций живой природы в виде созданных человеком механизмов. Жизнь за миллионы лет создала многообразие форм, и люди лишь копируют их в той или иной мере в своих инженерных творениях. Но возможно ли, чтобы концепции, применяемые людьми при разработке роботов и программ, которые ими управляют, использовались в реальной жизни для её изменения? Да, такое течение есть. Lifehacking это течение, которое зародилось как подход к построению собственной жизни как к написанию программы. При этом используются все те же подходы и приёмы, которые используют программисты.

Читать далее
Total votes 16: ↑5 and ↓11-2
Comments10

Кратко про то, как устроен компилятор Go

Reading time8 min
Views10K

Привет, Хабр!

В back in 2007 трое гуру из Google — Роб Пайк, Кен Томпсон и Роберт Гриземер — решили, что мир нуждается в чем-то свежем и быстром. Они метили на упрощение процесса разработки, но при этом хотели сохранить весь перфоманс на уровне C. И вот, в 2009 году появился Golang.

Первые версии были далеки от совершенства, но с каждым релизом Go становился только круче. Garbage collector, goroutines, channels — эти фичи сделали Go особенным. С каждым апдейтом Go становился только быстрее и надежнее. И не забудем про экосистему — с каждым годом она росла как на дрожжах, предлагая всё новые инструменты и библиотеки.

С версии 1.5 компилятор Go сам начал компилироваться в Go. С тех пор производительность только растет. JIT, улучшения в escape analysis, введение модулей в версии 1.11 — каждая фича делала Go всё более мощным.

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

Читать далее
Total votes 20: ↑12 and ↓8+8
Comments8

Подборка: навыки и инструменты начинающего Go-разработчика

Level of difficultyEasy
Reading time4 min
Views14K

Привет! Меня зовут Александр Тетеркин, я Go-разработчик в VK. Раньше я писал на Python, потом перешел на Go — пишу на этом языке уже три года, а также являюсь наставником на курсе «Go-разработчик с нуля».

Я знаю, что новички в любой сфере задаются вопросами о том, с чего начать: какие инструменты самые актуальные, про что прочитать в первую очередь, о чём спросят на собеседовании на младшую позицию.

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

Читать далее
Total votes 14: ↑10 and ↓4+7
Comments0

Паттерн Unit of Work в разрезе чистой архитектуры DDD на языке Golang

Level of difficultyMedium
Reading time9 min
Views18K

Всем привет! Недавно мне выпала возможность разработать шаблон сервиса, который можно было бы использовать как для монолитной, так и для микро‑сервисной архитектуры. Шаблон должен был придерживаться принципов Domain‑Driven Design (DDD). В этом процессе, я столкнулся с двумя интересными проблемами:

Проблема 1: Сложности обеспечения транзакционности базы данных

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

Проблема 2: Нарушение изолированности слоя

В попытке решить первую проблему, некоторые разработчики переносят работу с транзакциями на уровень слоя приложения, чтобы избежать прямой зависимости от базы данных. Однако, такой подход, несмотря на его обоснование, может нарушить изолированность слоев и противоречить принципам DDD и чистой архитектуры. Это, в конечном итоге, затрудняет поддержку приложения и усложняет его масштабирование.
Эти две проблемы стали отправной точкой для исследования применения паттерна Unit of Work и его роли в обеспечении надежности и консистентности данных в контексте Golang и DDD.

В статье я расскажу о своем подходе к решению этих задач.

Читать далее
Total votes 6: ↑4 and ↓2+3
Comments7

Техники обучения, которые вошли в мою рутину

Level of difficultyEasy
Reading time3 min
Views27K

Я являюсь Vue-фронтенд разработчиком. И как и любому программисту, мне приходится учить большие объемы материала с целью повышения квалификации или прохождения интервью. Здесь я опишу способы, которые я использую для упорядочивания и запоминания материала. Я не буду подробно описывать каждый из методов, только перечислю, какие помогают лично мне. Приступим же.

Читать далее
Total votes 11: ↑10 and ↓1+10
Comments21
1
23 ...

Information

Rating
Does not participate
Registered
Activity