Skip to content

kaiquekandykoga/kaiquekandykoga

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 

Repository files navigation

About me ⚡

I am a Ruby and C# developer focused on backend systems, especially in API design and system observability. I am currently diving into Java to expand my skills

When deciding what to learn next, I think in terms of Information Systems, which include five key parts: hardware, software, data, people, and processes. This helps me stay focused on building a balanced and practical set of skills


My interests 😁

Backend Development

  • API development (Monoliths & Microservices)
  • Troubleshooting & observability in distributed systems
  • System Design (Scalability, Reliability, Maintainability)

Data Structures and Algorithms

While my main focus is backend engineering, I regularly work on data structures and algorithms to sharpen my problem-solving skills


Interpersonal Skills 🌱

Communication

Recommended tools:

  • draw.io
  • Atlassian Confluence

Teamwork

Recommended tools:

  • GitHub

Problem-solving

Time management

Recommended tools:

  • Google Calendar

Technical Skills 🔧

Databases

  • Primary: PostgreSQL

  • Secondary: MariaDB, Memcached, Redis, SQLite

Miscellaneous

Docker, Git, Kubernetes, POSIX utilities (grep, find, etc.), VirtualBox, tmux

Operating systems

  • Primary: Linux (openSUSE, Debian, Ubuntu, RHEL, Qubes OS, Alpine, NixOS)

  • Secondary: FreeBSD

Programming languages

  • Primary: Ruby, C#

  • Secondary: sh (Bourne Shell), Bash (Bourne Again Shell), PowerShell, JavaScript, TypeScript, Java, C, C++ (Qt)

Text editors

  • Primary: Vim, VS Code
  • Secondary: Emacs

My Learning System 🧠

Choosing a career path

I have identified three approaches to choosing a learning path:

  • Tool-first: Start by learning a specific tool, then explore the broader areas where that tool is commonly used
  • Area-first: Begin by studying a particular domain or field, then learn the tools typically used within that area
  • Company-first: Focus on a specific company, then identify the technologies and domains it emphasizes, and learn accordingly

Documentation technique

I created a personal learning system to document everything I study. I use .rb files to structure knowledge—writing class-based notes on tools, languages, and concepts ranging from Vim to GNU Bison to X11. This helps me think through code and organize large amounts of information efficiently

Example: Vim

class Vim
  def grep
    [
      ":grep",
      ":grep colima -r ."
    ]
  end
end

Example: Repositories

class Bitbucket
  def private
    [
      # list private repos
    ]
  end

  def public
    [
      # list public repos
    ]
  end
end

This approach is inspired by how FreeBSD maintains everything in one tree. I am currently experimenting with managing multiple repositories while keeping my single-repo philosophy

Why do I do it this way?

Simply because I enjoy it


My Values ❤️

  • Respect

  • Honesty


Recommended Readings 📕

  • Advanced Programming in the UNIX environment Third Edition - W. Richard Stevens and Stephen A. Rago
  • Designing Data-Intensive Applications - Martin Kleppmann

Credits 🏆

Big thanks to Microsoft and the GitHub team for this incredible platform where I can share my work and thoughts freely

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published