Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
190 commits
Select commit Hold shift + click to select a range
48ef840
Create hugo.yml
bouroo Dec 31, 2022
efc6d3b
🚧hugo first time
bouroo Dec 31, 2022
beb7f56
🚧 hugo git ignore
bouroo Dec 31, 2022
8caad17
👷hugo build version 0.109.0
bouroo Dec 31, 2022
cfa9a58
🚧add profile
bouroo Dec 31, 2022
41d3e78
🚧try draft
bouroo Dec 31, 2022
c371d69
💄 try new theme
bouroo Jun 23, 2023
b206c72
💄 try new theme
bouroo Jun 23, 2023
cd2ea1f
💄 change themem
bouroo Jun 24, 2023
0ec5228
👷 HUGO_VERSION
bouroo Jun 24, 2023
2da48c3
⚡️ avatarURL from github
bouroo Jun 24, 2023
cf8f1bf
📝 add subtitle
bouroo Jun 24, 2023
092dbcf
📝 header.title
bouroo Jun 24, 2023
a21a062
📄 CC BY-SA
bouroo Jun 24, 2023
3c4c74e
📝 test template
bouroo Jun 24, 2023
69bc409
change linkedin url
bouroo Jul 9, 2023
c6f021e
📝 behind cloudflare
bouroo Jul 16, 2023
6b70fbe
💄 subtitle
bouroo Jul 16, 2023
aa7d84e
⚡️ use native hugo mermaid
bouroo Jul 16, 2023
b2dbb48
📝 subtitle
bouroo Jul 16, 2023
8dd19af
💚 hugo 0.112.3
bouroo Jul 16, 2023
a647812
📝 Linux Sysctl Tuning
bouroo Jul 19, 2023
5c6bf1e
✏️ Promox VE
bouroo Jul 19, 2023
de29634
💄 featured-image
bouroo Jul 19, 2023
981afce
🔍 featured-image
bouroo Jul 19, 2023
7fccecf
🔍 Kawin's Pages & Blogs
bouroo Jul 19, 2023
c1b3e91
📝 cloudflare tunnel k3s k8s
bouroo Jul 20, 2023
7ce2c3f
💄 bash
bouroo Jul 20, 2023
ac98910
kube proxy + load balancer
bouroo Jul 21, 2023
49d80a3
📝 tcp vs unix socket
bouroo Jul 28, 2023
1870ba2
📝 unix socket tags
bouroo Jul 28, 2023
543ba2f
✏️ docker compose
bouroo Jul 28, 2023
869de04
✏️ Apps & Database
bouroo Jul 28, 2023
9b7d79b
✏️ capitalist
bouroo Jul 28, 2023
5e54477
🚧 go solid
bouroo Jul 29, 2023
033a674
🚧 go solid
bouroo Jul 29, 2023
4df538c
📝 go SOLID
bouroo Jul 29, 2023
fdb7822
✏️ L:34
bouroo Jul 29, 2023
e85d020
🚧 go struct memory
bouroo Jul 30, 2023
85fcd8f
📝 go struct memory
bouroo Jul 30, 2023
4bc06d0
📝 benchmark go struct
bouroo Jul 30, 2023
27d3800
📝 GO struct
bouroo Jul 30, 2023
1911d4d
Update index.md
bouroo Jul 30, 2023
0230c6a
typoo
bouroo Jul 30, 2023
25def9c
🚧 go value or pointer
bouroo Jul 31, 2023
40bd1dc
🚧 stack heap
bouroo Jul 31, 2023
3adfb9a
🚧 when pointer
bouroo Jul 31, 2023
84f9a88
🚧 img
bouroo Jul 31, 2023
7b50b46
📝 go value vs pointer
bouroo Jul 31, 2023
80491d0
✏️ L:46
bouroo Jul 31, 2023
bb6c143
✏️ L:39
bouroo Jul 31, 2023
0c26c56
L:42
bouroo Jul 31, 2023
ecae127
🎨 L:119
bouroo Jul 31, 2023
af76b33
✏️ L:42
bouroo Jul 31, 2023
96804a8
✏️ L:103
bouroo Jul 31, 2023
f97eed8
📝 L:114
bouroo Jul 31, 2023
4ef6ee4
📝 L:113
bouroo Jul 31, 2023
3862b18
📝 benchmark_receiver
bouroo Jul 31, 2023
48dffe1
📝 relref
bouroo Aug 1, 2023
e477f8b
🚧 working
bouroo Aug 1, 2023
353dacc
📝 go sync pool
bouroo Aug 2, 2023
cbc5e8e
📝 sync.Pool
bouroo Aug 2, 2023
3a701c4
📝 basic
bouroo Aug 2, 2023
ff63b53
🚧 automaxprocs
bouroo Aug 2, 2023
960bb09
📝 benchmark img
bouroo Aug 3, 2023
28c5e1d
gc operation
bouroo Aug 3, 2023
91b1b25
add pointer use case
bouroo Aug 6, 2023
a3ba2ae
📝 add about page
bouroo Aug 12, 2023
3470a7b
💄 description
bouroo Aug 12, 2023
873bb94
💄 try featured-image-preview
bouroo Aug 12, 2023
15f7d61
📝 GOMAXPROCS
bouroo Aug 13, 2023
ad41799
✏️ automaxprocs
bouroo Aug 14, 2023
dff00ea
⚡️ webp image
bouroo Aug 14, 2023
855d501
🍱 concurrency_vs_parallelism
bouroo Aug 18, 2023
1de31da
📝 DragonflyDB vs Redis
bouroo Aug 21, 2023
481d3b7
📝 admonition
bouroo Aug 21, 2023
741d182
Update index.md
bouroo Aug 22, 2023
56035ca
📝 admonition
bouroo Aug 22, 2023
45f9155
📝 sql ops
bouroo Sep 5, 2023
7ecd24d
Update index.md
bouroo Sep 5, 2023
2999537
📝 B+Tree
bouroo Sep 6, 2023
12466a0
📝 NoSQL
bouroo Sep 6, 2023
4fc9f5a
📝 NoSQL
bouroo Sep 6, 2023
b854c11
📝 draft COLLATE
bouroo Sep 8, 2023
88b8aa4
🎨 default apge init
bouroo Sep 9, 2023
d137c43
Add files via upload
bouroo Sep 11, 2023
78cc607
📝 interview nosql
bouroo Sep 12, 2023
6a4b355
📝 categories
bouroo Sep 12, 2023
7aaa636
📝 COLLATE
bouroo Sep 13, 2023
b3bd9a8
🎨 sql explain
bouroo Sep 14, 2023
b116ba8
🚧 pagination
bouroo Sep 14, 2023
7d04dac
📝 about
bouroo Sep 14, 2023
aca45ef
📝 pagination
bouroo Sep 27, 2023
641c9d0
Update index.md
bouroo Sep 28, 2023
44e3257
📝 DB patterns for building microservices
bouroo Sep 28, 2023
f3b1439
📝 Go + Rust FFI
bouroo Oct 13, 2023
e66fee2
📝 Go + Rust
bouroo Oct 13, 2023
bd03370
📝 Go ❤️ Rust
bouroo Oct 13, 2023
01fa096
🚧 X10
bouroo Oct 13, 2023
2b5468b
Canghan Coffee
bouroo Oct 13, 2023
4fff5d5
💄 images params
Dec 9, 2023
e794a0f
📝 io.ReadAll vs io.Copy
Dec 10, 2023
bc2b416
💄 benchmark in table
Dec 11, 2023
2302d79
📝 faster json ingo
Dec 11, 2023
417234d
📝 go code
Dec 11, 2023
681530a
✏️ func
Dec 11, 2023
bc97797
DDD, TDD, BDD
Jan 27, 2024
61eb681
BDD
Jan 27, 2024
d85e5bb
Update index.md
bouroo Jan 27, 2024
77790fd
about
bouroo Feb 8, 2024
68cb4b9
📝 pg_col_data_padding
Feb 15, 2024
1ed6bb9
📝 title
Feb 15, 2024
1f52bc4
📝 nl
Feb 15, 2024
638ac24
📝 about
Feb 15, 2024
c39faa7
Update index.md
bouroo Feb 15, 2024
73b988a
📝 go & k8s
Mar 13, 2024
937a7f3
✏️ GOMEMLIMIT
Mar 13, 2024
4c82d5d
⚡️ featuredImage
Mar 13, 2024
5336d99
💄 title
Mar 13, 2024
b18244a
⚡️ reuse assets
Jun 9, 2024
62e7c5d
💄 featured-image
Jun 9, 2024
eee5774
📝 tricks_readable_code
Jun 9, 2024
40af239
✏️ add mor details
Jun 9, 2024
7f6273f
✏️ receipt
Jun 9, 2024
868eb7f
💫 About Kawin Vir.
bouroo Sep 16, 2024
ba9d19d
avataImage
bouroo Sep 16, 2024
534d343
profilePic
bouroo Sep 16, 2024
ec0c7ff
Consultant
bouroo Sep 16, 2024
b772a12
Technical consultant
bouroo Sep 16, 2024
75630f5
📝 Add detailed Big O Notation explanations and Go code examples.
Sep 28, 2024
227e11b
📝 Add post on Go + NATS messaging with publisher and subscriber examples
Sep 28, 2024
8a1440b
📝 Update comment to indicate publishing until terminate signal
Sep 28, 2024
b4900cb
Update index.md
bouroo Oct 10, 2024
ddbc933
Update Hugo version to 0.124.0, change theme to KeepIt, add new blog …
Dec 21, 2024
fa511d2
Add references to Golang optimization and lock avoidance videos.
Dec 22, 2024
741b4a3
Publish draft and switch theme from KeepIt to LoveIt
Dec 22, 2024
b919b24
Update Go article: revised title, improved mutex lock avoidance strat…
Dec 22, 2024
b3e2b9e
📝 add more details
Dec 22, 2024
4e564f5
📝 add new example
Dec 22, 2024
fd73ccc
📝 Add reference link for deeper understanding and new function using …
Dec 22, 2024
567029e
✏️ Fix typo in Thai documentation for better readability.
Dec 22, 2024
7a4d07b
📝 Fix: Correct data initialization to use pointer in processStackPoin…
Dec 22, 2024
6aed3b3
fix: missing example
bouroo Dec 22, 2024
e88a122
📝 Fix typos and improve clarity in Go concurrency article.
Dec 23, 2024
4c92b2f
📝 Refactor producer to use slice and add veryLongTask function
Dec 28, 2024
3b920ef
🍱 example
Dec 31, 2024
e344c92
📝 rename title
Dec 31, 2024
45e6ddb
📝 order header
Dec 31, 2024
32d43de
📝 Add .DS_Store ignore, SSE section; update vote func doc
Jan 1, 2025
61fb590
📝 Added SSE flow, removed duplicate line
Jan 1, 2025
ff44619
📝 Add article on roles in tech industry
Jan 19, 2025
9dba11c
✏️ Translate content and streamline text
Jan 19, 2025
d69ee14
📝 Update featured images for multiple posts and enhance professional …
bouroo Jul 11, 2025
c16e39a
🌐 feat: Add English translations for blog posts and about page
bouroo Jul 11, 2025
bc69d3a
chore: Update Hugo version to 0.128.2
bouroo Jul 11, 2025
c04dba2
🖼️ Update featured images from webp to jpg format across multiple posts
bouroo Jul 11, 2025
8b5b6b0
📝 Update titles and enhance content clarity in messaging system compa…
bouroo Jul 11, 2025
d30283d
chore: Update content for clarity and enhance messaging system compar…
bouroo Jul 11, 2025
b47b974
chore: Update content for clarity in messaging system comparison post
bouroo Jul 11, 2025
727272e
feat: Add portfolio page and list layout with project details
bouroo Jul 11, 2025
53ee7ec
feat: Revise portfolio index structure and remove unused list layout
bouroo Jul 12, 2025
ea86456
feat: Add English portfolio page with project details and descriptions
bouroo Jul 12, 2025
dfdb1c6
feat: Update portfolio content and localization for Thai audience
bouroo Jul 12, 2025
262ffd3
fix: Correct author name spelling in about and portfolio pages
bouroo Jul 12, 2025
08bf8de
feat: Update project descriptions to include NodeJS in university man…
bouroo Jul 12, 2025
0334f0b
fix: Update fintech platform description to include NATs in technolog…
bouroo Jul 12, 2025
aeb1fce
docs(about): revise professional experience descriptions for clarity …
bouroo Sep 1, 2025
6af87a2
docs(about): update professional experience dates and reorder section…
bouroo Sep 1, 2025
d405d7a
feat(blog): add new Go post: Interface as Input, Struct as Output
bouroo Nov 8, 2025
dd9f23e
chore(blog(go/interface-struct)): update featured image
bouroo Nov 8, 2025
7aa2617
แก้ไขคำในบทความเกี่ยวกับ Interface และ Struct
bouroo Nov 14, 2025
3335656
docs(blog(go)): translate and rename interface post
bouroo Nov 23, 2025
ff11a6a
Translate article to Thai and enhance explanations
bouroo Nov 24, 2025
7c5e381
build(deps): update Hugo version and GitHub Actions
kawinv-hash Jul 7, 2026
73eefda
fix(ci): quote shell vars in Hugo install step to satisfy shellcheck …
kawinv-hash Jul 7, 2026
85cd5c4
docs(about): update professional experience and bio
kawinv-hash Jul 7, 2026
69c5a27
refactor(about): remove Hugo front matter
kawinv-hash Jul 7, 2026
4645bd5
docs(content): update metadata and refine post content
kawinv-hash Jul 7, 2026
b6bf9a6
feat(rust-series): add Part 1 — Getting Started with Rust
kawinv-hash Jul 7, 2026
a101b15
feat(rust-series): add Part 2 — Ownership, Borrowing & Lifetimes
kawinv-hash Jul 7, 2026
811886a
feat(rust-series): add Part 3 — Structs, Enums & Pattern Matching
kawinv-hash Jul 7, 2026
b6d6d66
feat(rust-series): add Part 4 — Collections, Iterators & Error Handling
kawinv-hash Jul 7, 2026
176ad47
feat(rust-series): add Part 5 — Traits & Generics
kawinv-hash Jul 7, 2026
d15088e
feat(rust-series): add Part 6 — Async Rust with Tokio
kawinv-hash Jul 7, 2026
e4c4940
feat(rust-series): add Part 7 — Building wsProxy: CLI, Config & Server
kawinv-hash Jul 7, 2026
b82951f
feat(rust-series): add Part 8 — Building wsProxy: Proxy Core & Deploy…
kawinv-hash Jul 7, 2026
4752556
fix(rust-series): add missing summary split and fix series cross-links
kawinv-hash Jul 7, 2026
5910da8
feat(rust-series): add origin story motivation across series
kawinv-hash Jul 7, 2026
89fb5cb
refactor(rust-series): change tone from 'learning from scratch' to 'r…
kawinv-hash Jul 7, 2026
f996dae
chore(rust-series): update featured images to local paths
kawinv-hash Jul 11, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .env
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
HUGO_VERSION=0.145.0
74 changes: 74 additions & 0 deletions .github/workflows/hugo.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
# Sample workflow for building and deploying a Hugo site to GitHub Pages
name: Deploy Hugo site to Pages

on:
# Runs on pushes targeting the default branch
push:
branches: ["gh-pages"]

# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:

# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
permissions:
contents: read
pages: write
id-token: write

# Allow one concurrent deployment
concurrency:
group: "pages"
cancel-in-progress: true

# Default to bash
defaults:
run:
shell: bash

jobs:
# Build job
build:
runs-on: ubuntu-latest
env:
HUGO_VERSION: 0.145.0
steps:
- name: Install Hugo CLI
run: |
wget -O "${{ runner.temp }}/hugo.deb" "https://github.com/gohugoio/hugo/releases/download/v${HUGO_VERSION}/hugo_extended_${HUGO_VERSION}_linux-amd64.deb" \
&& sudo dpkg -i "${{ runner.temp }}/hugo.deb"
- name: Install Dart Sass Embedded
run: sudo snap install dart-sass-embedded
- name: Checkout
uses: actions/checkout@v7
with:
submodules: recursive
- name: Setup Pages
id: pages
uses: actions/configure-pages@v6
- name: Install Node.js dependencies
run: "[[ -f package-lock.json || -f npm-shrinkwrap.json ]] && npm ci || true"
- name: Build with Hugo
env:
# For maximum backward compatibility with Hugo modules
HUGO_ENVIRONMENT: production
HUGO_ENV: production
run: |
hugo \
--minify \
--baseURL "${{ steps.pages.outputs.base_url }}/"
- name: Upload artifact
uses: actions/upload-pages-artifact@v5
with:
path: ./public

# Deployment job
deploy:
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
runs-on: ubuntu-latest
needs: build
steps:
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v5
18 changes: 18 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -13,3 +13,21 @@

# Dependency directories (remove the comment below to include it)
# vendor/

### Hugo ###
# Generated files by hugo
/public/
/resources/_gen/
/assets/jsconfig.json
hugo_stats.json

# Executable may be added to repository
hugo.exe
hugo.darwin
hugo.linux

# Temporary lock file while building
.hugo_build.lock
**/.DS_Store

.playwright-mcp/
3 changes: 3 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
[submodule "themes/LoveIt"]
path = themes/LoveIt
url = git@github.com:dillonzq/LoveIt.git

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

The submodule URL is using SSH (git@github.com:...). For better portability, especially in CI/CD environments or for collaborators who may not have SSH keys set up for GitHub, it's recommended to use the HTTPS URL instead.

	url = https://github.com/dillonzq/LoveIt.git

548 changes: 427 additions & 121 deletions LICENSE

Large diffs are not rendered by default.

22 changes: 22 additions & 0 deletions archetypes/default.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
---
title: "{{ replace .TranslationBaseName "-" " " | title }}"
subtitle: ""
date: {{ .Date }}
lastmod: {{ .Date }}
draft: true
author: "Kawin Viriyaprasopsook"
authorLink: "https://kawin.dev"
description: ""
license: ""
images: []

tags: []
categories: []

featuredImage: "/img/featured-image.webp"
featuredImagePreview: "/img/featured-image.webp"

lightgallery: true
---

<!--more-->
143 changes: 143 additions & 0 deletions config/_default/hugo.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,143 @@
baseURL = "https://kawin.dev/"

# Change the default theme to be use when building the site with Hugo
theme = "LoveIt"

# website title
title = "Kawin's Pages"

defaultContentLanguage = "th"

# language code ["en", "zh-CN", "fr", "pl", ...]
languageCode = "th"
# language name ["English", "简体中文", "Français", "Polski", ...]
languageName = "ภาษาไทย"
# whether to include Chinese/Japanese/Korean
hasCJKLanguage = false

# default amount of posts in each pages
[pagination]
pagerSize = 12
# google analytics code [UA-XXXXXXXX-X]
# googleAnalytics = ""
# copyright description used only for seo schema
copyright = ""

# whether to use robots.txt
enableRobotsTXT = true
# whether to use git commit log
enableGitInfo = true
# whether to use emoji code
enableEmoji = true

[params]
title = "Kawin's Pages"
description = "Kawin's Pages & Blogs"
# site default theme ["auto", "light", "dark"]
defaultTheme = "auto"
# public git repo url only then enableGitInfo is true
gitRepo = "https://github.com/bouroo/bouroo.github.io"
# website images for Open Graph and Twitter Cards
images = ["https://avatars.githubusercontent.com/u/1217739"]
[params.header]
[params.header.title]
name = "Kawin vir."
pre = "🧑‍💻 "
[params.footer]
license = 'CC BY-SA'
[params.home]
[params.home.profile]
title = ""
avatarURL = "https://avatars.githubusercontent.com/u/1217739?size=192"
subtitle = '🌐 Remote Working lover.<br>🧑‍💻 Backend Dev & System Admin.<br>🎮 Love to play games.<br>🏡 Like watching Japanese anime.'
disclaimer = ""
# Social config about the author
[params.social]
GitHub = "bouroo"
Linkedin = "kawin-vir"
Twitter = "bouroo"
RSS = true

# Author config
[params.author]
name = "Kawin Viriyaprasopsook"
email = "kawin.v@kkumail.com"

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

This configuration file publicly exposes an email address. This can make the owner a target for spam bots and phishing attempts. It's advisable to remove or obfuscate it unless it's essential for it to be public.

link = "https://kawin.dev"

# Markup related configuration in Hugo
[markup]
# Syntax Highlighting (https://gohugo.io/content-management/syntax-highlighting)
[markup.highlight]
# false is a necessary configuration (https://github.com/dillonzq/LoveIt/issues/158)
noClasses = false

[menu]
[[menu.main]]
weight = 1
identifier = "posts"
# you can add extra information before the name (HTML format is supported), such as icons
pre = ""
# you can add extra information after the name (HTML format is supported), such as icons
post = ""
name = "Posts"
url = "/posts/"
# title will be shown when you hover on this menu link
title = ""
[[menu.main]]
weight = 2
identifier = "tags"
pre = ""
post = ""
name = "Tags"
url = "/tags/"
title = ""
[[menu.main]]
weight = 3
identifier = "categories"
pre = ""
post = ""
name = "Categories"
url = "/categories/"
title = ""
[[menu.main]]
weight = 4
identifier = "about"
pre = ""
post = ""
name = "About"
url = "/about/"
title = ""
[[menu.main]]
weight = 5
identifier = "portfolio"
pre = ""
post = ""
name = "Portfolio"
url = "/portfolio/"
title = ""
[[menu.main]]
weight = 9
identifier = "github"
pre = "<i class='fab fa-github fa-fw' aria-hidden='true'></i>"
post = ""
name = "GitHub"
url = "https://github.com/bouroo"
title = "GitHub"

[languages]

[languages.th]
weight = 1
languageCode = "th"
languageName = "ภาษาไทย"

[languages.en]
weight = 2
languageCode = "en"
languageName = "English"

[frontmatter]
date = ['date', 'publishDate', 'lastmod']
expiryDate = ['expiryDate']
lastmod = [':git', 'lastmod', 'date', 'publishDate']
publishDate = ['publishDate', 'date']
101 changes: 101 additions & 0 deletions content/about/index.en.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,101 @@
---
title: "About Kawin Vir."
subtitle: ""
date: 2023-08-12T15:32:50+07:00
lastmod: 2023-08-12T15:32:50+07:00
draft: false
author: "Kawin Viriyaprasopsook"
authorLink: "https://kawin.dev"
description: "About Kawin Viriyaprasopsook — a senior backend engineer with 10+ years of experience in Go microservices, cloud-native infrastructure, and remote work, based out of Khon Kaen, Thailand."
license: ""
images: []

tags: []
categories: []

featuredImage: "featured-image.webp"
featuredImagePreview: "featured-image"

lightgallery: true
---

![profilePic](https://avatars.githubusercontent.com/u/1217739)
<!-- {{< figure height="260" width="260" src="https://avatars.githubusercontent.com/u/1217739">}} -->

## Professional Experience

Senior Backend Engineer possessing over a decade of experience in architecting and deploying distributed systems, Go microservices, and cloud-native infrastructure. Demonstrates proven expertise in integrating development and operations (DevOps) to ensure the delivery of scalable, fault-tolerant platforms within the Fintech and E-commerce sectors. Experienced in technical team leadership and mentoring engineers on principles of clean architecture and implementation of best practices.

Open to permanent remote opportunities from Khon Kaen or hybrid arrangements in Bangkok

## Personal Characteristics

- **Remote Work Enthusiast**: I thrive in remote working environments.
- **Backend Developer and Systems Administrator**: Specialized in Go/JS programming.
- **Gaming Enthusiast**: I enjoy playing video games.
- **Anime Aficionado**: I have a keen interest in watching Japanese anime.

<!--more-->

## Socials
[![LinkedIn](https://img.shields.io/badge/LinkedIn-%230077B5.svg?logo=linkedin&logoColor=white)](https://linkedin.com/in/kawin-vir) [![Twitter](https://img.shields.io/badge/Twitter-%231DA1F2.svg?logo=Twitter&logoColor=white)](https://twitter.com/bouroo)

# Tech Stack
![Go](https://img.shields.io/badge/go-%2300ADD8.svg?style=for-the-badge&logo=go&logoColor=white) ![Rust](https://img.shields.io/badge/rust-%23000000.svg?style=for-the-badge&logo=rust&logoColor=white) ![Shell Script](https://img.shields.io/badge/shell_script-%23121011.svg?style=for-the-badge&logo=gnu-bash&logoColor=white) ![TypeScript](https://img.shields.io/badge/typescript-%23007ACC.svg?style=for-the-badge&logo=typescript&logoColor=white) ![Cloudflare](https://img.shields.io/badge/Cloudflare-F38020?style=for-the-badge&logo=Cloudflare&logoColor=white) ![JWT](https://img.shields.io/badge/JWT-black?style=for-the-badge&logo=JSON%20web%20tokens) ![Nginx](https://img.shields.io/badge/nginx-%23009639.svg?style=for-the-badge&logo=nginx&logoColor=white) ![MariaDB](https://img.shields.io/badge/MariaDB-003545?style=for-the-badge&logo=mariadb&logoColor=white) ![Redis](https://img.shields.io/badge/redis-%23DD0031.svg?style=for-the-badge&logo=redis&logoColor=white) ![Supabase](https://img.shields.io/badge/Supabase-3ECF8E?style=for-the-badge&logo=supabase&logoColor=white) ![SQLite](https://img.shields.io/badge/sqlite-%2307405e.svg?style=for-the-badge&logo=sqlite&logoColor=white) ![MongoDB](https://img.shields.io/badge/MongoDB-%234ea94b.svg?style=for-the-badge&logo=mongodb&logoColor=white) ![LINUX](https://img.shields.io/badge/Linux-FCC624?style=for-the-badge&logo=linux&logoColor=black) ![Docker](https://img.shields.io/badge/docker-%230db7ed.svg?style=for-the-badge&logo=docker&logoColor=white) ![Rancher](https://img.io/badge/rancher-%230075A8.svg?style=for-the-badge&logo=rancher&logoColor=white)

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

The URL for the Rancher badge appears to have a typo. The domain img.io is likely incorrect and should be img.shields.io. This will cause the badge image to be broken.

Suggested change
![Go](https://img.shields.io/badge/go-%2300ADD8.svg?style=for-the-badge&logo=go&logoColor=white) ![Rust](https://img.shields.io/badge/rust-%23000000.svg?style=for-the-badge&logo=rust&logoColor=white) ![Shell Script](https://img.shields.io/badge/shell_script-%23121011.svg?style=for-the-badge&logo=gnu-bash&logoColor=white) ![TypeScript](https://img.shields.io/badge/typescript-%23007ACC.svg?style=for-the-badge&logo=typescript&logoColor=white) ![Cloudflare](https://img.shields.io/badge/Cloudflare-F38020?style=for-the-badge&logo=Cloudflare&logoColor=white) ![JWT](https://img.shields.io/badge/JWT-black?style=for-the-badge&logo=JSON%20web%20tokens) ![Nginx](https://img.shields.io/badge/nginx-%23009639.svg?style=for-the-badge&logo=nginx&logoColor=white) ![MariaDB](https://img.shields.io/badge/MariaDB-003545?style=for-the-badge&logo=mariadb&logoColor=white) ![Redis](https://img.shields.io/badge/redis-%23DD0031.svg?style=for-the-badge&logo=redis&logoColor=white) ![Supabase](https://img.shields.io/badge/Supabase-3ECF8E?style=for-the-badge&logo=supabase&logoColor=white) ![SQLite](https://img.shields.io/badge/sqlite-%2307405e.svg?style=for-the-badge&logo=sqlite&logoColor=white) ![MongoDB](https://img.shields.io/badge/MongoDB-%234ea94b.svg?style=for-the-badge&logo=mongodb&logoColor=white) ![LINUX](https://img.shields.io/badge/Linux-FCC624?style=for-the-badge&logo=linux&logoColor=black) ![Docker](https://img.shields.io/badge/docker-%230db7ed.svg?style=for-the-badge&logo=docker&logoColor=white) ![Rancher](https://img.io/badge/rancher-%230075A8.svg?style=for-the-badge&logo=rancher&logoColor=white)
![Go](https://img.shields.io/badge/go-%2300ADD8.svg?style=for-the-badge&logo=go&logoColor=white) ![Rust](https://img.shields.io/badge/rust-%23000000.svg?style=for-the-badge&logo=rust&logoColor=white) ![Shell Script](https://img.shields.io/badge/shell_script-%23121011.svg?style=for-the-badge&logo=gnu-bash&logoColor=white) ![TypeScript](https://img.shields.io/badge/typescript-%23007ACC.svg?style=for-the-badge&logo=typescript&logoColor=white) ![Cloudflare](https://img.shields.io/badge/Cloudflare-F38020?style=for-the-badge&logo=Cloudflare&logoColor=white) ![JWT](https://img.shields.io/badge/JWT-black?style=for-the-badge&logo=JSON%20web%20tokens) ![Nginx](https://img.shields.io/badge/nginx-%23009639.svg?style=for-the-badge&logo=nginx&logoColor=white) ![MariaDB](https://img.shields.io/badge/MariaDB-003545?style=for-the-badge&logo=mariadb&logoColor=white) ![Redis](https://img.shields.io/badge/redis-%23DD0031.svg?style=for-the-badge&logo=redis&logoColor=white) ![Supabase](https://img.shields.io/badge/Supabase-3ECF8E?style=for-the-badge&logo=supabase&logoColor=white) ![SQLite](https://img.shields.io/badge/sqlite-%2307405e.svg?style=for-the-badge&logo=sqlite&logoColor=white) ![MongoDB](https://img.shields.io/badge/MongoDB-%234ea94b.svg?style=for-the-badge&logo=mongodb&logoColor=white) ![LINUX](https://img.shields.io/badge/Linux-FCC624?style=for-the-badge&logo=linux&logoColor=black) ![Docker](https://img.shields.io/badge/docker-%230db7ed.svg?style=for-the-badge&logo=docker&logoColor=white) ![Rancher](https://img.shields.io/badge/rancher-%230075A8.svg?style=for-the-badge&logo=rancher&logoColor=white)


---
# Professional Experience

## Arise By Infinitas Co., Ltd.
### Senior Associate Back-end Engineer
Nov 2025 - present
- Architected high-performance Go microservices handling heavy daily API traffic.
- Mentored junior engineers on Go best practices, microservices patterns, and Clean Architecture.
- Collaborated with cross-functional teams to deliver major features on schedule.

## LINE Pay (Thailand)
### Senior Software Engineer
Jun 2025 - Nov 2025
- Built payment processing microservices supporting high-volume financial transactions.
- Optimized database queries and caching strategies, reducing API response time.
- Collaborated with product and QA teams to deliver user-friendly payment tools.

## Extend IT Resource Co., Ltd.
### Assistant Manager (Backend Lead)
October 2023 - May 2025
- Led Go/JS backend teams delivering scalable fintech microservices for insurance and loan systems.
- Architected and deployed K8s cloud infrastructure, improving reliability and storage durability.
- Optimized CI/CD, monitoring, and logging to reduce latency.

## Tomato Ideas Co., Ltd.
### Technical Lead
May 2023 - September 2023
- Guided backend teams in developing scalable fintech and e-commerce microservices.
- Managed the architecture and deployment of K8s cloud infrastructure.

## COOP NIX Co., Ltd.
### Senior System Engineer
August 2020 - April 2023
- Built Proxmox/Ceph HCI clusters supporting a large-scale VM environment.
- Managed private cloud infrastructure with zero unplanned downtime.
- Optimized performance, security, and horizontal scalability.

## Canghan Coffee
### Co-Founder, Coffee Roaster
November 2019 - present
- Develop coffee and beverage recipes.
- Roast coffee beans.

## Provincial Waterworks Authority
### Computer Engineer
February 2014 - July 2020
- Managed server and network infrastructure across 22 regional branches.
- Led a Windows-to-Linux migration project, saving significantly on licensing and maintenance costs.
- Designed robust network architectures to minimize unplanned downtime.

## Zercle Technology Co., Ltd.
### Technical Co-Founder
January 2012 - January 2014
- Led engineering teams in building Go/JavaScript web applications.
- Established Agile/DevOps practices to reduce time-to-market.
- Managed the full technical stack from infrastructure to application deployment.
Loading