This week we had really unique event in Checkmarx — GeekDays, in which RnD and Product folks presented live talks in a multitude of technological domains. The event was designed by our learning and development department led by Nati Aluk, to promote peer learning, knowledge sharing, networking and collaboration.

One of the topics I had a chance to present was about system design and architectural challenges in building distributed systems.

I concluded this talk by positing that building simple systems is hard in general. Often, it’s resulted from our tendency to put too much focus on the future and potential use-cases, but also since distributed systems are inherently complex. Therefore using patterns and practices such as KISS, YAGNI and evolutionary architectures could help us to reduce accidental complexity and build more robust and maintainable systems.

Hope you will find it useful.


Introduction

We witness containers rapidly becoming native choice for running cloud and on-premises workloads.

Containerized applications benefit from scalability, cost-effectiveness, better resources utilization and maintainability. In addition, containers become default solution for exercising modern DevOps practices, such as GitOps and CI/CD processes.

Needless to say, that scanning containers for security vulnerabilities…


Going back to my previous post about achieving architectural simplicity, I’d like to ponder the question why is it so complex to build simple systems?

We can spot two main reasons for this difficulty: it requires (1) deep technical knowledge and (2) discipline.

Deep technical knowledge is needed in order…


  1. Ask WHY
  2. Choose simplest solution (Occam’s Razor)
  3. Apply YAGNI
  4. Don’t optimize early
  5. Ignore imaginary use-cases
  6. Defer important decisions
  7. Experiment and pivot

In this post, I’d like to give a brief overview of GitOps framework and how IaC security fits into GitOps concept.

GitOps Introduction

GitOps is a framework that encompasses DevOps processes and practices, used for application development and applies them to infrastructure automation.

  1. The entire system is described declaratively
  2. The desired system…

Introduction

A lot of software design principles, such as “Keep It Simple, Stupid” ( KISS), “Do-not Repeat Yourself” (DRY) or even conventional design patterns to certain extent, can be applied to infrastructure as code (IaC).

The goal is the same: we want easily extensible, maintainable and testable IaC. …


The thinker sculpture by Auguste Rodin

This book is lifetime classic that could be a great read for anyone who is interested in improving his mindset.

Free Kindle Book could be found here:

https://www.amazon.com/As-Man-Thinketh-Complete-Original/dp/1523643536

It teaches how to use our mind in a better way and how maintaining positive thoughts will ultimately affect our circumstances.

The…


Many of us live in very dynamic business environments, where things happen quickly and we frequently find ourselves in the midst of dealing with business or organizational changes.

Those changes are inevitable in order to quickly react to challenges and opportunities and being successful organization is predicated on the extent…


Technical Lead at Checkmarx

This checklist may help us to quickly assess if we’re doing a good job as managers.

Ask yourself these questions:

  1. Can you take a long vacation?
  2. Is your team consistently delivering value?
  3. Do your team members tell you openly what they think?
  4. Can you give them candid and valuable feedback?
  5. In case of emergencies, does your team handle it without you coordinating everything?
  6. Do people feel safe to take calculated risks and make mistakes?
  7. Is there healthy team climate and people enjoy working with one another?
  8. Do you have enough time to work on what’s important and not necessarily what’s urgent?
  9. Is your team constantly looking for opportunities to improve?
  10. Does your team value your opinion and seek for your advise?

Published By

Mark Mishaev — Technical Lead at Checkmarx

Follow

Originally published at https://www.linkedin.com.


This is a profound and deeply philosophical book that had a tremendous impact on my perspective of human development, self-discipline, motivation, philosophy and life in general.

Buy this book on Amazon (Must read)

In this story I wrote down all the excerpts that resonate with me the most. This is…

Mark Mishaev

I am an experienced software development team leader with proven leadership skills in an agile environment, and an ability to work with top-notch engineers.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store