When you have eliminated all which is impossible, then whatever remains, however improbable, must be the truth π€ππ‘
ππ¨π Software Craftmanship's manifesto
π My name is Tien Do. I work as a Ruby on Rails software engineer π»π€οΈ. Ruby is among my first programming languages ππ», and I feel fortunate to have found it for its unique freedom and expressive syntax π€π¬. Thanks to Matsumoto and all developers who crafted this fantastic language ππ¨βπ»π.
Ruby on Rails builds upon Ruby, and my enjoyment of Ruby underscores my passion for Ruby on Rails π€©.
As a software engineer, I embrace a π continuously evolving approach to learning and growth. I'm dedicated to π€ maintaining curiosity and openness towards new technologies and techniques, always seeking ways to improve my skills and knowledge. When tackling challenges or seeking advice, I prioritize solutions that benefit my team and organization π₯. I am π passionate about crafting code that is readable, scalable, and maintainable. Moreover, I understand that π change is constant in both software engineering and life, and I'm prepared to adapt and evolve to stay ahead πββοΈππ.
- Quick learning, adapting to new technologies, teams, and organizations π
- Proficient in Ruby and familiar with other programming languages such as Python, Go, Haskell, JavaScript... π»
- Strong problem-solving and strategic thinking skills π€π‘
- Experience with software architectures such as microservices, distributed system ποΈ
- Familiarity with cloud platforms such as AWS βοΈ
- Strong debugging and troubleshooting skills ππ
π± My GitHub Data
π¦ 360.7 kB Used in GitHub's Storage
π 3 Contributions in the Year 2026
πΌ Opted to Hire
π 340 Public Repositories
π 19 Private Repositories
I Mostly Code in Ruby
Go 21 repos βββββββββββββββββββββββββ 18.92 %
Python 11 repos βββββββββββββββββββββββββ 09.91 %
Haskell 4 repos βββββββββββββββββββββββββ 03.60 %
Shell 3 repos βββββββββββββββββββββββββ 02.70 %
TypeScript 1 repo βββββββββββββββββββββββββ 00.90 %
Timeline
Last Updated on 11/06/2026 21:02:21 UTC
There is no large codebase in any language that has zero accidental complexity. There are awkward bugfixes. There are workarounds. There are mitigations. There are many many reasons why the useful code won't be pure and beautiful π»ππ€
Changeability is the only design metric that matters; code that's easy to change is well-designed π οΈππ¨
Like many human endeavors, design is part art, part engineering, and part guesswork and experimentation. Discipline, hard work, inspiration, and sound technique all play their parts π¨π§βπ»π¬π§ͺ
MakΒing even a simΒple change to a monoΒlithΒic codeΒbase is pretΒty hard because you must underΒstand the entire thing very well. MakΒing changes to smallΒer, well-defined modΒules is muchΒ easier π‘π»π€
Do what you feel in your heart to be right β for youβll be criticized anyway πππ£οΈ