Ionuț Baloșin

SOFTWARE ARCHITECT AND INDEPENDENT TECHNICAL TRAINER

Menu
  • Training
    • Software Architecture Essentials
    • Java Performance Tuning
    • Designing High-Performance Applications
    • SAFe for Architects
    • SAFe Agile Software Engineer
    • SAFe DevOps
  • Talks
  • About
  • Contact
  • External Links
Menu

When do we need an architect

Posted on 5th December 2019 by Ionut Balosin

Key takeaways the methodology, whatever that is (e.g. SCRUM, SAFE, etc) should not impose the necessity of having an architect in the team, but rather the real project needs. in the case of greenfield projects, for projects with a lot of external dependencies, projects under intensive development that involve architectural decisions, technology or framework elicitation,…

Read more

Logging patterns and their performance impact

Posted on 21st November 201923rd November 2019 by Ionut Balosin

Motivation In the current post, I would like to explore different logging patterns and to identify which one is more efficient in terms of performance. Since logging is spread across almost every application, it is important to be aware of what is the most optimal pattern to rely on when writing logging messages. In this…

Read more

JVM JIT Compilers Benchmarks Report 19.11

Posted on 6th November 2019 by Ionut Balosin

Context and Motivation The current article describes a series of Java Virtual Machine (JVM) Just In Time (JIT) Compilers micro-benchmarks and their results, relying on different optimization patterns or intrinsics support. For the current issue, I included two compilers from OpenJDK 64-Bit Server VM version (build 13+33) C1/C2 JIT Graal JIT From my point of view,…

Read more

The Agile Manifesto: A Software Architect’s Perspective

Posted on 12th October 2019 by Ionut Balosin

According to the licensing policy, I would like to mention this article was originally published on InfoQ.  Key Takeaways While the role and responsibilities of a software architect can be seen as contradictory to the values of the Manifesto for Agile Software Development, a good architect finds techniques that support an agile development team. Working software over…

Read more

JVM JIT Compilers Benchmarks Report 19.04

Posted on 8th April 20194th November 2019 by Ionut Balosin

Context and Motivation The current article describes a series of Java Virtual Machine (JVM) Just In Time (JIT) Compilers benchmarks and their results, relying on different optimization patterns. For the current issue I included only two compilers: Oracle HotSpot C1/C2 JIT Oracle HotSpot Graal JIT In the future, I might extend it to Eclipse OpenJ9,  Azul…

Read more

Kotlin explicit inlining at megamorphic call-sites pays off in performance

Posted on 11th March 20197th April 2019 by Ionut Balosin

Motivation In the current post, I would like to investigate how megamorphic call-sites are optimized in Kotlin as a result of explicit inlining (using the explicit inline modifier) and what is the performance gain out of it. The idea crossed my mind while I was reading the official kotlinlang.org website which mentions “inlining may cause the generated…

Read more

Chaining lambda optimizations in HotSpot VM and GraalVM

Posted on 24th February 201925th February 2019 by Ionut Balosin

  Motivation Current post tackles the problem of chaining (or linking) multiple lambda calls which seem to be differently optimized by the HotSpot Just In Time Compiler C2 (i.e. JIT C2) and GraalVM JIT Compiler. In this regard, I would propose to start detailing the problem, to run and check the benchmark results, to find…

Read more

Why Do We Need Architectural Diagrams?

Posted on 10th February 201929th November 2019 by Ionut Balosin

According to the licensing policy, I would like to mention this article was originally published on InfoQ.  Key Takeaways Creating and maintaining architectural diagrams to provide accurate and valuable content is not easy. Most of the time we create either too much, too little or irrelevant documentation because we fail to identify the proper beneficiaries and…

Read more

IT Designation Definitions

Posted on 31st December 201810th February 2019 by Ionut Balosin

  Software Architect is a person who draws the initial baby sketches, proves the prototype is working and then considers his job done. Developer can never estimate how much time it takes in practice to deliver the baby. Test Engineer is a person who thinks this is not the right baby. UX Researcher usually needs…

Read more

Passing this::method reference within a loop affects performance

Posted on 1st December 201810th February 2019 by Ionut Balosin

Motivation The problem I would like address affects the performance in case this::method reference is passed to another method (especially within a long running loop), hence it is important to be aware and avoid this situation. The problem This arises when a lambda or a method reference which captures this reference (e.g. this::method) is passed to…

Read more
  • 1
  • 2
  • 3
  • Next

Catalogue of IT Courses

Please check out our offer:
> Java Performance Tuning
> Software Architecture Essentials
> Designing High-Performance Applications

Follow Me

Follow @ionutbalosin

Recent Posts

  • When do we need an architect
  • Logging patterns and their performance impact
  • JVM JIT Compilers Benchmarks Report 19.11
  • The Agile Manifesto: A Software Architect’s Perspective
  • JVM JIT Compilers Benchmarks Report 19.04
  • Kotlin explicit inlining at megamorphic call-sites pays off in performance
  • Chaining lambda optimizations in HotSpot VM and GraalVM

Categories

© 2019 Ionuț Baloșin | WordPress Theme by Superb WordPress Themes