> Amir Barylko

Amir started his career in 1994 working for IBM as a senior developer while he was finishing his Masters degree in computer science. Since then he worked as team leader and architect for the past 15 years.

Having started with languages like C++ and Java he spent many years coding in C# and training other developers in topics such domain modelling, abstractions, patterns, automation, dependency injection, testing, etc.

Being an incurable geek, always thirsty for knowledge, his passion for technology moved him towards Ruby on Rails (RoR) a few years ago, becoming an advocate of RoR web development.

Looking for new ways of sharing his knowledge and helping others to achieve their goals motivated Amir to become an owner and build an agile project management tool called SmartView that was released in 2014.

Amir is an avid participant and collaborator of the software community. He orginizes (Coffe and Code) weekly, participates in multiple user groups (.NET, Ruby, Agile, JVM and FunProg), presents in conferences and has been hosting the Global day of coderetreat since 2011.

Also he as been awarded the Microsoft MVP award in the area of Application Lifecycle Management since 2012.

Amir is a rare combination of high technical skills, experience in a wide range of platforms, exceptional presentation skills and great sense of humour. His presentations are always rich in content and fun to attend.

> Blog posts

Acceptance Testing With Legacy Databases
Amir Barylko
One of the most common pain points of implementing automated acceptance testing is the interaction with the database. For greenfield projects you can plan from day one how to setup the test to easily include the database interaction but with legacy projects it is not always that easy.
Maybe null is not an Option
Amir Barylko
Tony Hoare calls null references his billion dollar mistake. Using null values (NULL, Null, nil, etc) makes code harder to maintain and to understand. But what can we do about it? To start let's review the meaning of null values ...
Idiomatic Iterative Design
Amir Barylko
Lately I have been having fun solving the AdventOfCode. I mainly used Haskell to solve each day so I can learn a bit about Haskell and as a byproduct VIM as well. In the last Ruby Meetup we used Day 7 to illustrate how to use Rantly for properties testing. It was my first try to solve Day 7 using Ruby, and I wanted to find an elegant, idiomatic, short way to do it...
Self generating data
Amir Barylko
Every week I meet for Code and Coffee with other devs to chat about all kind of topics (often related to software) and lately we have been doing Katas from CodeWars under the WpgDotNet clan. This time around I was working with @QuinnWilson and @AdamKrieger doing the Highest and lowest Kata using Ruby and RSpec. Is a simple Kata but I wanted to put focus on TDD, self data generation and property testing...
Amir Barylko
Testing is a very important part of software development, but should we do black box testing or test every line of code? How can we find balance between writing the right thing (BDD) and writing things right (TDD)?
Repository nightmares
Amir Barylko
The Repository pattern is a famous (or infamous?) pattern that we can find in Martin Fowler's Patterns of Enterprise Application Architecture. It was meant to be used as an interface to a collection, but what I have seen more often is that it becomes an abstraction to the data layer or ORM framework. Not so long ago I did a presentation on Who killed object oriented programming, and I mentioned the Repository implementation as one of the culprits. So what's so bad about it? What can we do to improve it? I have a counter-proposal: What if we don't need it at all?

Amir Barylko

Email Email
Web Web
Twitter Twitter
GitHub GitHub
LinkedIN LinkedIn

Looking for someone else?

You can find the rest of the Western Devs Crew here.

© 2015 Western Devs. All Rights Reserved. Design by Karen Chudobiak, Graphic Designer