I think I’m a very lazy developer. Being so lazy inspires (or even forces) me to constantly explore for things and techniques which makes my daily job much easier. I hate typing. Hence, I generate everything I can generate. I generate gitignore file, Parcelables, json models, unit tests, constructors… I don’t even create methods manually, well no, I do, but from unit tests, the moment when I declare an external API for the class I’m constructing, after that I just use the most out of my favorite IDE (Intellij IDEA), to declare an interface and implement it using just shortcuts.

Despite the fact I really love Java, at times I blame it for its verbosity. That’s why I’m happy to have Kotlin in my toolbox. I wish I could use it for my daily job, but my side project, so I can master my humble knowledge of it. It’s funcational, so concise and safe, I couldn’t ask for more!

I use Dependency injection library so they do dirty work for me.

I advocate for Clean Architecture, thanks to my typing attitude again. Using the clean way approach I keep application layers well separated and thus well replaceable; a Passive View pattern for Presentation layers helps me extract all business logic into (unit)testable objects, which for me personally means confidence in change, well-separated pieces of relatively small well understandable classes with low cohesion.

One of my favorite books states - “Change is the most constant in software development”. Those words resonate in my head each time I'm about to write(generate) some code. (Every time I commit I have a recollection the guy who created Git wrote it in two weeks... No :) )

Understanding Reactive was the moment I realised I'll never be the same again.

I love and hate Android.

I love my wife.

If you share the same values, excluding my wife, get in touch and let’s try to change the world!

Thanks :)

p.s. I think I've never typed that much!