Dan Iftodi

  • About

Batch processing at Scale (RO)

22 noiembrie 202123 noiembrie 2021 Dan Iftodi Leave a comment Architecture, Engineering

A high-level presentation about software for processing large quantities of data, it supports horizontal scalability, restarts during operation and is not using a database for tracking progress.

Continue reading


Returning Java Optional Benchmark

17 octombrie 202117 octombrie 2021 Dan Iftodi Leave a comment General

I was reading on the internet that returning Java Optional may be slow and it is not recommend for high-performance applications. A bit of history In Java lack of a value can be represented as null or a more readable approach and less error-prone is to use Optional. Using Optional is the recommended way of […]

Continue reading


Dual Writes

14 martie 202114 martie 2021 Dan Iftodi Leave a comment Distributed Systems, Engineering

Dual Writes often happens in a microservices based architecture. Whenever a piece of data changes in one place, we need to persist or react on it on multiple places. Imagine a user bought a product on our website and we need to save order in the database and inform a delivery service that they should […]

Continue reading


Notes on Structured Concurrency, Fibers/Coroutines

2 ianuarie 202131 august 2021 Dan Iftodi Leave a comment Engineering

Resources: Notes on structured concurrency, or: Go statement considered harmful Roman Elizarov — Structured concurrency KotlinConf 2017 – Deep Dive into Coroutines on JVM by Roman Elizarov Communicating sequential processes This blog post is in progress so I will update it gradually. There is a presentation that I have recorded:

Continue reading


Cloud-Native

27 septembrie 202025 decembrie 2020 Dan Iftodi Leave a comment Architecture, Engineering

This article describes how a Cloud Native application should look like, it is based on the well known 12 Factors. At the moment of writing this article, in my understanding, the Cloud Native is not only about code that developers write, but it is also a way of organizing engineering teams so that their work […]

Continue reading


AbstractBuilder pattern that returns the subclass instance

17 martie 202018 martie 2020 Dan Iftodi Leave a comment Effective Java, Engineering, Patterns

I will start with a simple example where we want to have an AbstractBuilder for building Pet instances, in our example this will be a Dog. Here are the Pet class, and the Dog class that extends Pet Suppose we need a builder for building Dog instances and we know that in future there will […]

Continue reading


Kotlin Basics

24 ianuarie 202023 ianuarie 2020 Dan Iftodi Leave a comment Engineering, Kotlin

The Unit return type declaration is optional for functions. The following codes are equivalent. Single-Expression functions:When a function returns a single expression, the curly braces can be omitted and the body is specified after = symbol fun sum(a : Int, b : Int) : Int = a + b Explicitly declaring the return type is […]

Continue reading


Kotlin Intro

23 ianuarie 202023 ianuarie 2020 Dan Iftodi Leave a comment Engineering, Kotlin

Hello World Kotlin programs start at the main function. Here is an example of a simple Kotlin “Hello World” program: When compiled this code will be compiled into a file named after file name + ‘Kt’, if your file was named Main.kt, the compiled code will be in a file name MainKt. In the above […]

Continue reading


An Agile approach in software building

20 octombrie 201930 iunie 2020 Dan Iftodi Leave a comment Architecture, Engineering

When writing software, it is important to keep you organized and focused, losing focus or vague understanding requirements will endup in a bad written system in the best case. If you have got a large body of work that needs to go into production there are lots potential things that can go wrong. When you […]

Continue reading


Retry mechanism in an event based architecture

14 septembrie 20192 ianuarie 2021 Dan Iftodi Leave a comment Architecture

In this article I would like to explain what kind of problems can we encounter when working with Apache Kafka and how we can address them. Apache Kafka is a distributed streaming platform, it is used for building real-time data pipelines, because of persistence of topics it can be used for processing historical message events; […]

Continue reading


Posts navigation

Older posts
Search for:

Archives

  • noiembrie 2021
  • octombrie 2021
  • martie 2021
  • ianuarie 2021
  • septembrie 2020
  • martie 2020
  • ianuarie 2020
  • octombrie 2019
  • septembrie 2019
  • august 2019
  • iulie 2019
  • aprilie 2019
  • martie 2019
  • februarie 2019
  • ianuarie 2019
  • decembrie 2018
  • noiembrie 2018
  • iunie 2018
  • mai 2018
  • aprilie 2018
  • martie 2018
  • ianuarie 2018
  • noiembrie 2017
  • octombrie 2017
  • august 2017
  • iulie 2017
  • aprilie 2017
  • martie 2017
  • ianuarie 2017
  • septembrie 2016
  • august 2016
  • aprilie 2016
  • martie 2016
  • februarie 2016
  • ianuarie 2016
  • noiembrie 2015
  • septembrie 2015
  • august 2015
  • mai 2015
  • aprilie 2015
  • ianuarie 2015
  • octombrie 2014
  • septembrie 2014
  • august 2014
  • iulie 2014
  • iunie 2014
  • mai 2014
  • aprilie 2014
  • februarie 2014
  • decembrie 2013
  • noiembrie 2013
  • octombrie 2013
  • septembrie 2013
  • august 2013
  • iulie 2013
  • iunie 2013
  • aprilie 2013
  • februarie 2013
  • ianuarie 2013
  • decembrie 2012
  • noiembrie 2012
  • octombrie 2012
  • septembrie 2012
  • august 2012
  • iulie 2012
  • iunie 2012
  • mai 2012
  • aprilie 2012
  • martie 2012
  • februarie 2012
  • decembrie 2011
  • noiembrie 2011
  • octombrie 2011
  • iulie 2011
  • februarie 2011
  • ianuarie 2011
  • octombrie 2010

Meta

  • Autentificare
AtlantaSoft - all rights reserved. Theme by Colorlib Powered by WordPress