About Rafael Chaves

Rafael Chaves
I am a software engineering aficionado, and the founder here at Abstratt. For details such as work history, see my resume. For a history of consulting engagements, see clients I have worked with in the past. For OSS projects I have been working on, see my Github activity. In case it helps, I am a Brazilian/Canadian citizen.


  • consultant in software improvement (since 2013)
  • senior developer/architect at Genologics (2008-2013)
  • Jazz SCM client developer at IBM Canada (2005-2006)
  • Eclipse Platform Core developer at OTI/IBM Canada (2002-2005)
  • senior developer/team lead at Perfil Tecnologia (2001-2002)


  • model-driven development
  • modernization of legacy codebases
  • domain specific language design and tooling
  • development of code generators
  • domain-driven design
  • evolutionary design
  • object orientation (analysis, design, coding)
  • componentization/modularization
  • API design (in code, or inter-process)
  • code readability, representation of domain knowledge in code
  • OSGi/Eclipse plug-in development
  • distributed systems
  • parallel programming
  • performance, scalability, reliability
  • test driven development and automated testing
  • reuse
  • continuous integration

Academic background and certifications

  • BS and MSc (thesis in pt_br) in Computer Science (UFSC, 2000 and 2004)
  • Java certified Programmer and Developer (Sun, 1999 and 2001)