Experienced software engineer with diverse professional background. Developer since 2006, passionate about Android since 2012. Deep understanding of GNU/Linux low-level C embedded development. The "hacker in the crowd" with interests in system and network security. Prefers having a broader perspective than a narrower one specialized in a particular direction.
Excellent problem solving skills as result of being exposed to various problem domains from different perspectives. Interested in system and application architecture. Fan of best practices and Robert C. Martin (Uncle Bob)'s books and courses. Strong preference of doing the right thing at the right time rather than hacking something quick and paying the technical debt with interest later.
Favorite tasks: optimization/performance improvements.
Very communicative, positive, smiley, social and open to discussions and brainstorming. Considers software development a creative process. Loves to teach, explain and support junior software developers and to be a mentor.
Specialties
Android Development: Java, Kotlin, SDK+NDK, React Native, Expo/RN-CLI, JavaScript (ES6), TypeScript
Java Web Development: Spring, Spring Boot, Spring Security, Spring JPA, Hibernate, JUnit
Embedded Development: ANSI C language, GNU/Linux + userland (bash, vi, make, autotools, etc), MinGW/Cygwin/WSL, Valgrind, VxWorks, BSD Sockets, multithreading, OpenWrt
Other: Gradle, Maven, Node.js, x86 assembler, C#, Ruby, PHP, Python, HTML, CSS
Version control: Git + Gitflow, Gerrit, SVN, Telelogic Synergy Operating Systems: GNU/Linux, Microsoft Windows, Apple macOS (limited) Collaboration: JIRA, Confluence, Redmine
Good in SOLID principles, OOP, OOD, Design Patterns, Unit Testing/TDD