ABOUT THE AUTHOR

Maciej Manturewicz

Director of Engineering

Maciej is a Director of Engineering with nearly two decades in the software industry. He started his career journey as a software engineer, and he gained experience on every step of the ladder before landing in his current leadership role. With a rich background in software engineering, Maciej possesses a profound understanding of full-stack software projects. His expertise spans various technologies, including cloud computing, microservices architecture, Kubernetes and monitoring and observability solutions. He has a passion for SDLC automation through efficient CI/CD pipelines and automated QA, ensuring that every project meets the highest standards of reliability and performance.

Maciej Manturewicz

CONNECT WITH MACIEJ MANTUREWICZ

Linkedin

Recent posts by Maciej:

Thumbnail of an article about Trunk-based development: best practices and strategies
SOFTWARE DEVELOPMENT

Trunk-based development: best practices and strategies

All development teams strive for an agile, flexible, and efficient software development process. There are many ways to achieve it. Trunk-based development is one of the more modern approaches that is gaining attention. Let’s take a closer look at what it is, how it works, and what benefits it can bring your team. Trunk-based development is a management practice. It is a source-control branching model focusing on a single branch of code called the trunk. Trunk-based development aims to keep the trunk ready for deployment at all times.
Thumbnail of an article about Platform engineering — everything you need to know
SOFTWARE DEVELOPMENT

Platform engineering — everything you need to know

As the popularity of cloud-native applications rises steadily, software development becomes a more and more complex process. With multiple smaller autonomous teams working on separate components of your application, where each team often has a different tech stack, an isolated codebase, and even separate release procedures, it is not surprising that the amount of overhead snowballs too. Modern DevOps best practices like containerization, automated continuous deployment, infrastructure as code, and others allow developers to shorten the release cycle and develop cloud-native applications in any type of cloud environment, using complex architectures, especially those based on microservices.
Thumbnail of an article about Essential monitoring metrics for better decision-making
OBSERVABILITY

Essential monitoring metrics for better decision-making

Any company dealing with software development knows the importance of reliable infrastructure. Whether you have multiple environments for testing and production which are needed to allow your own teams to work without interruptions or you provide mobile or web services to customers, you will have to keep an eye on your systems. So it goes without saying, you will need a good monitoring system to make sure your systems and infrastructure keep performing as they should. But modern monitoring systems provide tons of raw data when the performance metrics are collected.
Thumbnail of an article about How the rapid application development model helps boost your business growth
SOFTWARE DEVELOPMENT

How the rapid application development model helps boost your business growth

With rapid growth and teams starting to expand, businesses often see the need to improve and speed up software development processes. At some point, you need a solution that is cost-efficient, agile in nature, and low-to-no code because traditional development methodologies don’t cut it any longer. This is when rapid application development comes in. It focuses on developing rapidly through frequent iterations and continuous feedback. How to implement it properly? What are the advantages of such a methodology?
Thumbnail of an article about [interview] How to use data to navigate complex systems better? Talking about monitoring and observability.
OBSERVABILITY

[interview] How to use data to navigate complex systems better? Talking about monitoring and observability.

In today's constantly developing technological landscape, businesses are looking for solutions that help them manage complex systems and ensure optimal performance. However, although 90% of IT professionals believe observability is important and strategic to their business, only 26% said their observability practice was mature. Why this difference? What are the reasons why businesses don’t manage to implement monitoring and observability at a high level? In this interview, we explore the significance of monitoring and observability - our guests Edyta Kałka, Senior Engineering Manager, and Maciej Manturewicz, Director of Engineering, will share their insights, real-world experiences, and opinions on how to create effective monitoring and observability solutions.
Multiple authors

Multiple authors

on Aug 4, 2023
Thumbnail of an article about Types of monitoring and observability data: categories and limitations
OBSERVABILITY

Types of monitoring and observability data: categories and limitations

The monitoring and observability of current complex software solutions can be even more intricate than the solutions themselves. Not only do monitoring and observability software or service providers need to understand these complexities, but they also need to provide clear and efficient insights. One aspect of providing a view into the monitored system is through metrics. In this article, we will group them into two intersecting types to enhance understanding of monitoring/observability concepts and make the use of monitoring and observability tools easier.
Thumbnail of an article about Why your company should use Kubernetes
CLOUD

Why your company should use Kubernetes

The software development industry, just like any other, is very susceptible to trends. When you hear about a certain tool or technology all the time, it is natural to start wondering if you need to quickly catch up and use that trendy thing as well. Kubernetes is something everyone seems to be talking about, but does your company really need it? And if yes, then why? Let’s try to find some answers to these fundamental questions. In order to understand what Kubernetes is and what it can help you with, let’s first take a look at containers.
Thumbnail of an article about Accelerating delivery: why CI/CD is important for your company
OPERATIONS

Accelerating delivery: why CI/CD is important for your company

Every stage of the software development life cycle is important in its own way. However, we all know that it is when the code goes into a production environment that the price of an error becomes especially high. It doesn’t matter if it is the first release of your software or a new build with important updates, a serious bug can cost your company and your customers a lot of money. The solution for this might seem obvious: just carry out more thorough testing. But the longer you spend on testing, the more your customers will have to wait.
Thumbnail of an article about Cloud app security: important aspects you need to know
CLOUD

Cloud app security: important aspects you need to know

Storing your company information and using applications hosted in the cloud is the new normal. Everybody knows that using the cloud brings reliability, flexibility, accessibility, and sometimes, in certain cases, even significant cost reductions compared to traditional on-premises data storage. More and more companies are getting rid of their own on-premises data centers and using the cloud. Multiple software as a service products and custom cloud-native applications can enhance workflow efficiency and improve collaboration between the employees.
Thumbnail of an article about 25 backend tools to facilitate web development
SOFTWARE DEVELOPMENT

25 backend tools to facilitate web development

We all know that appearance matters. However, when it comes to web applications, it is definitely not enough. Your end users might come for the beautiful layout and intuitive interface, but if your application is slow, full of errors, or crashes often, you won’t be able to retain clients. That is why in software development, it is important to pay equal attention to both the backend and frontend of your application. In software, the backend is everything that makes the app work behind the scenes. It connects the frontend, that is, the user-facing part of the application, with the database, where the data is stored.
Thumbnail of an article about Microservices vs. monolith: choosing the best for your project
SOFTWARE DEVELOPMENT

Microservices vs. monolith: choosing the best for your project

There is a widespread but misguided belief that the quality of the code defines whether or not a mobile or web application can be successful. The truth is, your app can have the most brilliant code in it and still be too slow or outdated for the customers. It is the architecture, the way your app is designed and built, that influences the user experience most of all. Architecture can quite literally make or break your application. Historically, applications were designed according to monolithic architecture principles.
Thumbnail of an article about From start to finish: how to write a successful testing plan
QUALITY ASSURANCE

From start to finish: how to write a successful testing plan

Every stage of the software development lifecycle is equally important. However, if there is one part of development that has the biggest impact on the customer experience, it is probably testing. Missed bugs that turn up in the production environment make the worst impression on end users. And if you miss critical errors, the application can stop working at the most inopportune time which might cost your users, and your own business, a lot of money. Thorough software testing can prevent all this from happening.
Thumbnail of an article about What is a tech stack and how to choose the right technology for your project?
SOFTWARE DEVELOPMENT

What is a tech stack and how to choose the right technology for your project?

Do you need to choose a tech stack for your project but don’t know where to start? If so, you’re in the right place. In this article, you’ll learn what a tech stack is, what tech stack components are, and what the different types of tech stacks are. Further, you’ll find information about choosing the right technology stack for your project and some common tech stacks used by famous companies. Does this content sound interesting? Let’s dive into the world of tech stacks right away. A tech stack consists of a set of tools and libraries that are combined together to develop an application.
Thumbnail of an article about Best practices for microservices you should adopt
SOFTWARE DEVELOPMENT

Best practices for microservices you should adopt

Microservices are all the rage these days. But the simple fact of implementing microservices architecture on your project doesn’t guarantee success. There are certain recommended practices that you should follow when it comes to microservices. Only then can you be sure that you will unlock the full potential of microservices architecture. Before learning in-depth about what you should keep in mind when adopting microservices, let’s quickly recap what they actually are. Microservices architecture presupposes building an application as a bunch of loosely coupled independent components.
Thumbnail of an article about What is microservices architecture — types, tools, pros and cons
SOFTWARE DEVELOPMENT

What is microservices architecture — types, tools, pros and cons

If you try to imagine an employee of a large organization who is supposed to run an entire business process on their own, from start to finish, and describe that hypothetical worker to anyone, it will definitely raise a few eyebrows. Indeed, it is strange to think that just one person should be in charge of, let’s say, purchases, accounting and maintenance at the same time. However, until recently, it was perfectly normal to expect the same from an app. Monolithic architecture used to be the main approach to building an application, and a lot of apps are still built as a single service.
Thumbnail of an article about Data lake vs. data warehouse — differences in data management
DATA

Data lake vs. data warehouse — differences in data management

The day-to-day activities of any organization bring in a lot of information. This data needs to be tracked, stored, and eventually analyzed to allow the business to learn and grow. The bigger the organization, the more data it has, so where a simple database used to be enough for data storage, increasingly often new solutions are required. When it comes to managing big data, i.e. vast amounts of data from multiple data sources in multiple formats, two solutions have become very popular over the years: data warehouses and data lakes.
Thumbnail of an article about What is data engineering?
DATA

What is data engineering?

In the past two decades, the digital world has been flooded with data. Most companies have completed digital transformations, and more and more users leave their digital footprint behind every day. All of this information can be turned into useful knowledge that allows companies to make data-driven decisions. This is where the process of data engineering takes place. Data engineering is a branch of data science. Data science is a broad term that includes all of the tasks that make data valuable - from gathering the data to storing, analyzing, and visualizing it.
Thumbnail of an article about Top 20 data engineering software and tools
DATA

Top 20 data engineering software and tools

Big data is an important part of operations for every technology-focused enterprise. But to make the analytics effective, there needs to be an efficient data management system governed by data engineers. Data pipelines and architecture are complex environments, and building them requires special tools. These include software for collecting, storing, and validating data, as well as applications for data visualization, analytics, and many more. Read on to check out our choices for the top 20 data engineering technologies.
Thumbnail of an article about Top 10 frontend frameworks for software development
SOFTWARE DEVELOPMENT

Top 10 frontend frameworks for software development

Frontend frameworks are a huge advantage while developing a website or an app. They are structures that will help you create an outstanding user experience, satisfy your clients and boost your business. Frameworks provide templates to interact with and are compatible with various libraries, which results in boosting your performance and, at the same time, reducing the amount of code required. However, with so many options to choose from it is easy to get overwhelmed. In this article we will present the top 10 frontend frameworks and their main features to help you choose the perfect one for your project.
Thumbnail of an article about Big data. What is it and why is it so important?
DATA

Big data. What is it and why is it so important?

Data analytics is a concept that has been around for decades. Bankers and traders of the past used handwritten spreadsheets to analyze client behavior and predict market trends. But as the years have passed, technology development has provided us with a more thorough and efficient take on data analytics. We’ve come to the age of big data, which has become one of the most significant issues for businesses of all kinds. But why is it so important? Read on to find out why you should care about big data analytics.
Thumbnail of an article about Top 7 Python testing frameworks for networks
QUALITY ASSURANCE
NETWORKS

Top 7 Python testing frameworks for networks

Testing is vital to any software development process, including network programming. It helps reduce project costs and provide high-quality code. While it may not be a developer’s favorite part of their work, building tests into the code from the beginning makes it easier to fix bugs. The Python programming language makes the whole process simple. Due to its versatility and many available frameworks, testing can be almost entirely automated. Python for networking is a great choice - read on to find out the top seven Python testing frameworks.
Thumbnail of an article about MVP roadmap — your guide to a successful product
SOFTWARE DEVELOPMENT

MVP roadmap — your guide to a successful product

A minimum viable product is a tool often used by startups to reduce the risk of overspending in the early stages of software product development. MVPs are popular because the success or failure of a product on the market may depend on its quality and implementation. How do you ensure that your product's MVP will fulfill its purpose and lead your team to success? The answer is an error-proof plan. Find out everything you need to know about a minimum viable product and how to create and use an MVP roadmap to build a scalable, robust software product.
Thumbnail of an article about What is software product development? Types, methodologies, and process
SOFTWARE DEVELOPMENT

What is software product development? Types, methodologies, and process

Software product development is a complex process that requires a lot of preparation. Without a proper step-by-step strategy, a project is most likely set for failure. To avoid that, you should choose the most suitable methodology and plan the process accordingly. Read on to learn everything you need to know about software product development. Software product development means creating a new product that meets particular market needs. It's a systemic, logical process that results in entirely new software or an upgraded version of an existing product.
Thumbnail of an article about What is CI/CD — all you need to know
OPERATIONS

What is CI/CD — all you need to know

The CI/CD process is now one of the essential paradigms in modern software development, oriented on delivery and quality. Continuous integration, continuous delivery, and continuous deployment benefit both software development and business. But what exactly stands behind the acronym CI/CD, and what is its added value? CI/CD stands for Continuous Integration (CI) and Continuous Deployment or Continuous Delivery (CD). Although the basics of each are relatively similar, there are fundamental differences that define the key beneficiaries, and the results that can be achieved.
Thumbnail of an article about Everything you should know about MVP software development
SOFTWARE DEVELOPMENT

Everything you should know about MVP software development

Have you ever wondered what successful apps like Facebook, and Spotify have in common? They have all used MVP development to gradually become mature platforms loved by millions of customers. For many IT startups, a minimum viable product is the first goal they strive for when developing a new application. It’s a way to gather the maximum amount of validated learning about the target audience with the minimumeffort. Let’s explain more about why you should invest in MVP software development and how to create a successful MVP.
Thumbnail of an article about MVP vs. prototype — which one do you need?
SOFTWARE DEVELOPMENT

MVP vs. prototype — which one do you need?

If you build software, for sure you know that you need to pass through several stages before launching the final product. Choosing the right development technique is one of the most important decisions to make, and the way you validate your business idea is another. Product validation sets your software up for success by challenging assumptions, revealing market demand, and defining explicit direction for product growth. IT businesses commonly use a prototype and a minimum viable product to verify whether their business concept will be embraced by target users and stakeholders.
Thumbnail of an article about Kubernetes: what is it and how you can use it (part 1/2)
CLOUD

Kubernetes: what is it and how you can use it (part 1/2)

Kubernetes is an open-source system for container orchestration enabling automated application deployment, scaling and management. Read this two-part blog post to understand the business perspective on Kubernetes. I will present a brief story of virtualization methods, the key concepts on which Kubernetes is built and how it can help your business when it comes to running containerized applications. The second part covers six main reasons to adopt Kubernetes. First, let’s take a look at the market data on the adoption of Kubernetes.