Home » Author Archives: Aviran Mordo

Author Archives: Aviran Mordo

Aviran Mordo
Aviran Mordo has over 20 years of experience in the software industry. He has been in many engineering roles and leading positions in start-ups and large corporations. Aviran is a tech-savvy and a technology blogger since the year 2000, with vast knowledge of the internet and software development.

Why Should You Do Microservices (or maybe you shouldn’t)

software-development-2-logo

Microservices architecture is really hyped these days (I should know, I have been talking about it in many conferences), however not many have been written about the actual reason for doing microservies in the first place. In the stories I tell in my public talks I try to explain that microserves architecture comes to solve a problem, and the main ...

Read More »

Safe Database Migration Pattern Without Downtime

software-development-2-logo

I’ve been doing a continuous delivery talk for a while now and during my talk I describe a pattern of how to safely migrating one database to another database without downtime. Since many people contacted me and asked for more details about it, I will describe it here in more details as promised. You can use this pattern to migrate ...

Read More »

Why I don’t like to hire team leads

agile-logo

Every company has its own culture that it wants to preserve. As a company grows it becomes harder to preserve its culture as you as a manager need (and should) give up control to team leads and to people you manage. Good company has a set of values, best practices and culture. When you hire a new person to the ...

Read More »

MySQL Is a Great NoSQL

mysql-logo

NoSQL is a set of database technologies built to handle massive amounts of data or specific data structures foreign to relational databases. However, the choice to use a NoSQL database is often based on hype, or a wrong assumption that relational databases cannot perform as well as a NoSQL database. Operational cost is often overlooked by engineers when it comes ...

Read More »

Building a Scalable and Resilient Architecture

software-development-2-logo

This article is a summery of my DevoxxUK talk about microservices. Like many startups before us, Wix.com started as a monolith application, which was the best architectural solution when we had no scalability and availability concerns. But as time went by and our small startup grew and gained success, it was time to change the architecture from a monolith—which experienced ...

Read More »

Continuous Delivery – Part 6 – Backward & Forward Compatibility

software-development-2-logo

Previous Chapter: Startup – Self Test One very important mind set developers will have to adopt and practice is backward and forward compatibility. Most production system do not consist on just one server, but a cluster of servers. When deploying new piece of code, you do not deploy it to all the servers at once because part of Continuous deployment ...

Read More »

Continuous Delivery – Part 5 – Startup – Self Test

software-development-2-logo

Previous Chapter: A/B Testing So far we discussed Feature Toggle and A/B testing. These two methods enable safe guards that your code does not harm your system. Feature toggles enable to gradually use new features and gradually expose it to users, while monitoring that the system behaves as expected. A/B testing on the other hand let you test how your ...

Read More »

Continuous Delivery – Part 4 – A/B Testing

software-development-2-logo

Previous chapter: Continuous Delivery – Part 3 – Feature Toggles From Wikipedia: In web development and marketing, as well as in more traditional forms of advertising, A/B testing or split testing is an experimental approach to web design (especially user experience design), which aims to identify changes to web pages that increase or maximize an outcome of interest (e.g., click-through ...

Read More »

Continuous Delivery – Part 3 – Feature Toggles

software-development-2-logo

Previous chapter: The Road To Continuous Delivery – Part 2 – Visibility One of the key elements in Continuous Delivery is the fact that you stop working with feature branches in your VCS repository; everybody works on the MASTER branch. During our transition to Continuous Deployment we switched from SVN to Git, which handles code merges much better, and has ...

Read More »

The Road To Continuous Delivery – Part 2 – Visibility

software-development-2-logo

Previous chapter: The road to continuous delivery – Part 1 Production visibility A key point for a successful continuous delivery is to make the production matrix available to the developers. At the heart of continuous delivery methodology is to empower the developer and make the developers responsible for deployment and successful operations of the production environment. In order for the ...

Read More »

Want to take your Java skills to the next level?

Grab our programming books for FREE!

Here are some of the eBooks you will get:

  • Advanced Java Guide
  • Java Design Patterns
  • JMeter Tutorial
  • Java 8 Features Tutorial
  • JUnit Tutorial
  • JSF Programming Cookbook
  • Java Concurrency Essentials