Static content in multiple regions. Solutions & pitfalls.

There are a lot of CDN solutions nowadays for static content hosting. But what if your customers are distributed around the world and you need maximum performance for all of them? We have tested a few multi-regional architectures on AWS and pleased to share with you a…

by Maksym Moskvychev

Which backend language to learn in 2020?

Choosing the right programming language is crucial for success in IT. This article represents data-driven research of programming languages suitable for backend web development, such as Python, Node.js, Java, PHP, C#, Ruby, Go and Kotlin. Languages are compared in general popularity, community sizes, job market,…

by Maksym Moskvychev

Building a Telegram bot with Node.js, AWS Lambda and GraphicsMagick

Building a chatbot not only simplifies the work of a developer, but it also improves the user experience: you do not need to install any app or open a website - chatbot is always with you in your messenger. In this article we will create a chatbot that…

by Maksym Moskvychev

Full page caching, Design and Reality

Full page caching is a common practice to deal with high traffic. Although it has clear advantages, many companies still choose not to do caching. In this article, Maksym Moskvychev explains best practices for configuring full page caching and shows pros and cons of using…

by Maksym Moskvychev

Protect website visitors with Content Security Policy (CSP)

At least 0,46% users have a malware that tries to add scripts to the browser and send data to external domain Many devices nowadays are infected with malware and spyware. One kind of such spyware is browser plugins. A simple example: user types in a…

by Maksym Moskvychev

How to scramble test data in AWS Aurora

According to AWS Well Architectured Framework, one of the security principles is to keep people away from data. The more you interact with sensitive information - the more the probability of human error. And the impact of real or even potential data misuse is very high, for example, Twitter case in 2016.

by Maksym Moskvychev

PNG Proxy: returns a screenshot of requested website

For many years setting up environment for Selenium tests was a tricky task for DevOps engineers. With appearence of Docker it became a bit easier, but still, you had to run a couple containers and keep them alive. Since 2017 @smithclay made possible to run Webdriver tests inside AWS…

by Maksym Moskvychev

AWS Global Accelerator compared to CloudFront and Route53

When AWS Global Accelerator was announced in November 2018 many engineers were asking what does it actually bring? The key features of Global Accelerator is using AWS backbone network and latency based region selection with failover. While it might sound awesome, similar features were available in other AWS…

by Maksym Moskvychev