Category: Процесс разработки

Hash (mis)usage: tales from the prod

Few observations in regards to hash usage, in projects where data volume and spikes in load shift engineering from the KISS paradigm to the extent where you have to really care about underlying technologies and data structures. There are different hash functions tailored for different use cases – quick pattern matching in Rabin-Karp algorithm, prefix …

Continue reading

Which type of database index you should use?

Overview of available type of indexes in different database engines and corresponding use cases. So, you have some data. Most likely you want to work with it – i.e. retrieve information according to some conditions = filtering what is important for you. Probably, even change the shape of this information – transform the data or …

Continue reading

Language of the data

My ultimate SQL Memo

LLM derive schema from unstructured data and build pyspark ETLs

still, understanding what you can do via plain SQL – allow you to choose what to ask and leverage insights from the data much more efficient

no magick wand – hard work 🙂

How to increase throughput of your engineering teams?

How to choose your database?

Use Postgres! Use whatever you have the most experience with! Every software design discussion should start with the game of questions to clarify what we are about to build. And what not. Boundaries are important to have a clear cut from a very shiny but probably too remote future with hundreds of thousands requests per …

Continue reading

Architecture of modern startup

hype wave, pragmatic evidence vs need to move fast Tech side of startups sometimes can be very fluid and contain a lot of unknowns. What tech stack to use? Which components might be overkill for now but worth keeping an eye for in the future? How to balance the pace of business features development while …

Continue reading

[docker][cassandra] Reaching mixed load – 750,000 op\sec

Cassandra performance tuning - challenge

The cart goes nowhere because the swan wants to fly in the air, the pike wants to swim underwater and the crawfish wants to crawl backward. Cassandra is one of powerhorse of modern high load landscape – nosql database that can be pluged to Spark for distributed computing, Titan for playing with graph data representation …

Continue reading

7 sins of blatant ignorance and how to avoid them

…You produce software for some time. In most cases it even works. Other developers tend to care about your opinion. Damn, you even wear some fancy title like senior\principal\architect. And here it is – suddenly you were offered to wear really posh title – CTO… This is moment when real troubles get started. I did …

Continue reading

Идеальный процесс разработки – утопия или Continuous Integration?

Какой такой Continuous Integration? Существуют немало приемов облегчающих разработку и сопровождение программ в промышленных масштабах – тестирование, система управления версиями, система отслеживания ошибок, автоматизированная система сборки и развертывания и т.д. Continuous Integration – объединяет все эти компоненты в единое целое, работающее по гибким правилам оптимальным для компании или проекта. Процесс разработки програмного обеспечения – достаточно …

Continue reading

Как изменить размер диска в виртуальной машине VirtualBox

Если при создании очередной виртуалки для VirtualBox вы совершили преступную халатность и позабыли учесть размер всего добра, что жизненно необходимо в нее запихать и теперь катастрафически не хватает места –  воспользуйтесь вот этой командной: VBoxManage modifyhd MyVirtualBoxImage.vdi –resize new-size-in-megabytes общий формат команды: VBoxManage modifyhd <uuid>|<filename> [–type normal|writethrough|immutable|shareable| readonly|multiattach] [–autoreset on|off] [–compact] [–resize <megabytes>|–resizebyte <bytes>]