Posts
คิดให้ดีก่อนลงทุนกับ shared component ใน microservices
ว่าด้วยเรื่องของ Cognitive Bias ในการพัฒนา software
สิ่งที่ได้เรียนรู้จากการทำงานแนว consulting มา 3 ปี
สิ่งที่ได้เรียนรู้จากการอ่าน(ฟัง)หนังสือเดือนพฤศจิกายน 2024
การอ่าน code เป็นทักษะ
วิธีใช้งาน JetBrains IDE กับ aws-vault
วิธีการตั้งค่า source tag สำหรับ Datadog logging ใน Kubernetes
วิธีแก้ไขปัญหา Unit Test ที่เกี่ยวกับ DateTime ใน .NET ให้รองรับ Locale ไทย
แนะนำ Dive เครื่องมือสำหรับวิเคราะห์ Docker image แบบละเอียด
ครั้งแรกกับการ upgrade EKS cluster
สิ่งที่ได้เรียนรู้จากการอ่าน(ฟัง)หนังสือเดือนตุลาคม 2024
เข้าใจ OpenID Connect Discovery Endpoint และการแก้ปัญหาเมื่อเชื่อมต่อกับ Auth0
ยิ่งมีข้อมูลน้อย bug ยิ่งน้อยลงจริงหรือ
แนะนำ Amazon Q สำหรับการทำ AWS CLI autocompletion
ว่าด้วยเรื่องของการทดสอบใน Staging environment
บันทึกการจัดระเบียบ AWS IAM permission ภายในองค์กร
บันทึกสิ่งที่ได้เรียนรู้จากการ optimise logging ของ Adevinta
บันทึกปัญหา Datadog Agent Unauthorized ในการดึงข้อมูล Kubernetes Cluster
การ sync AWS CloudFormation กับ Git โดยใช้ Git Sync
บันทึกการแก้ปัญหา /bin/bash: - : invalid option ใน Linux EC2 โดยเปลี่ยน Line Separator
สิ่งที่ได้เรียนรู้จากการอ่าน(ฟัง)หนังสือเดือนสิงหาคม 2024
สรุปสิ่งที่น่าสนใจจากงาน Invest or Gamble? การเงินนอกห้องเรียน
คุณสมบัติในการเป็น software engineer ที่ดีจาก Microsoft
คิดให้ดีก่อนที่จะใช้ theme ในการพัฒนา frontend web app
ว่าด้วยเรื่องของแนวทางในการออกแบบ SaaS ผ่าน multi-tenant architecture
ลองใช้งาน Broadcast feature ใน iTerm2
สวัสดี DevToys เครื่องมือสารพัดประโยชน์สำหรับ developer
ถอดบทเรียน consulting จาก The Orange Juice Test
บันทึกการแบ่งปัน Test-driven development
ความแตกต่างในการใช้งาน git pull กับ git pull rebase
จะเริ่มปรับปรุงแนวทางการทำงานของทีมอย่างไรดี
CCMenu ตอนนี้รองรับ Github Actions workflow แล้วนะ
ตอบคำถามเรื่องของการป้องกัน SQL injection บนระบบภาษา Go
แก้ปัญหา race condition ของการ run database migration ใน integration test ของระบบภาษา Go
บันทึกการแบ่งปัน Database migration บน Go
แนะนำเครื่องมือที่ใช้สร้าง dashboard view สำหรับ GitHub Actions
Syntax ที่ได้เรียนรู้จากการเขียน Makefile เพื่อ run script
บันทึกการแก้ปัญหา Docker exec format error บน Kubernetes
สรุปสิ่งที่น่าสนใจจาก Webinar: Act like a tech lead
ทบทวนเรียน Laravel จากการเขียน test
แนวคิดและแนวปฏิบัติในการให้ feedback กับเพื่อนร่วมงาน
สิ่งที่ได้เรียนรู้จากการอ่าน(ฟัง)หนังสือเดือนกุมภาพันธ์-มีนาคม 2024
แก้ปัญหา Go not found ใน Visual Studio Code
สวัสดี Fern สำหรับสร้าง API documentation และ SDK
จดบันทึกวิธีแก้ Connection refused ระหว่าง integration test โดยใช้ Testcontainers
วิธีการตั้งค่าเพื่อเปิดการ zoom หน้าจอใน macOS
บันทึก tips ที่ช่วยให้การประมาณค่า cloud infrastructure ง่ายขึ้น
แนวทางการออกแบบ architecture สำหรับ workload ที่ write เยอะ ๆ
ว่าด้วยการเลือกแนวทางในการจัดการกับ exception ในระบบ
แนวปฏิบัติในการเป็น mentor สำหรับนักพัฒนา software
ว่าด้วยเรื่องของ Software-as-a-Service (SaaS) business
สิ่งที่ได้เรียนรู้จากการอ่าน(ฟัง)หนังสือเดือนมกราคม 2024
Refactoring ก็มี Manifesto เหมือนกันนะ
เราจะวัด Productivity ของเหล่า Developer ได้อย่างไร
บันทึกทบทวนความเข้าใจในการใช้ Tactical Domain-Driven Design
แบ่งปัน Code Kata สำหรับปูพื้นฐานภาษา C#
สรุป software development journey ปี 2023
สิ่งที่ได้เรียนรู้จากการอ่าน(ฟัง)หนังสือช่วงครึ่งหลังของปี 2023
บันทึกครั้งแรกกับการพูดใน public conference
สิ่งที่ได้เรียนรู้จากการอ่าน(ฟัง)หนังสือช่วงครึ่งแรกของปี 2023 (ตอนที่ 2)
รวบรวมเครื่องมือ Productivity ที่น่าสนใจในเดือนธันวาคม 2023
บันทึกสิ่งที่น่าสนใจจาก PyCon Thailand 2023
สรุปสิ่งที่ได้เรียนรู้จาก Agile Tour Bangkok 2023
ว่าด้วยเรื่องของ Modular Monolith
การวิเคราะห์ code และทีมพัฒนา จาก Git Log
แนวทางการเลือก technology สำหรับ Content Management System ในปี 2023
สวัสดี Approval tests
บันทึกกฎในการเขียน prompt ที่ดีและง่ายและน่าทำตาม
ดู VDO เรื่อง Thoery of Constraints แล้วได้อะไร
ก้าวแรกสู่สังเวียน GitHub Copilot
ความสิ้นเปลือง 7 (+1) อย่างในการพัฒนา software
สรุปสิ่งที่น่าสนใจจากงาน XConf Thailand 2023
สิ่งที่ได้เรียนรู้จาก workshop เรื่อง Ego
แก้ไข Git author ของทุก commit ใน repository ด้วย filter-repo
สิ่งที่ได้เรียนรู้จากการไปเข้า course เกี่ยวกับ consulting
บันทึกการเป็นคนจัดกิจกรรม Toastmaster ในบริษัท
จะใช้ data structure แบบไหนในการเก็บข้อมูลบน Redis
พัฒนา AWS Lambda บน local environment ด้วย Serverless และ Localstack
สรุปสิ่งที่น่าสนใจจากงาน AWS Cloud Day Thailand (ส่วน Developer Lounge)
บันทึกการไปเที่ยว(ปลีกวิเวก)ที่เชียงคาน ปี 2023
สิ่งที่ได้เรียนรู้จากการทำ Composite Refactoring
บันทึกการไปเยี่ยมชมคลองเตยดีจัง
สิ่งที่ได้เรียนรู้จากการอ่าน(ฟัง)หนังสือช่วงครึ่งแรกของปี 2023
จดวิธีการปิดไม่ให้ Global Protect VPN run เองทุกครั้งที่เปิดเครื่อง macOS
ตกลงแล้วเราจะต้องมีประชุมจริง ๆ ไหมนะ
แนวทางการทำงานร่วมกันของ Platform team และ consumer ของพวกเขา
วิธี run containers บน Azure Container Apps แบบรองรับหลาย port
Rollback Kubernetes resources อย่างปลอดภัยบน Helm อย่างไร
แก้ปัญหา Azure Application Gateway อยู่ ๆ ก็เกิด 502 Bad Gateway
แนะนำ Johari window เพื่อรู้จักคนในทีมกันมากยิ่งขึ้น
ว่าด้วยเรื่องของกระบวนความคิดกว่าจะมาเป็น engineering practices ต่าง ๆ
สวัสดี Poetry สำหรับจัดการ dependency บน Python project
Soft skill สำหรับผู้นำในทีม consulting
Run Git hooks ในหลาย ๆ project ด้วย pre-commit
บันทึกการประหยัดเวลาในการ build Docker image ด้วย parallel mode
รวบรวมเครื่องมือ Productivity ที่น่าสนใจในเดือนพฤษภาคม 2023
บันทึกการทำ post-deployment check บน Azure Container Apps
สิ่งที่น่าสนใจจาก Thoughtworks Tech Radar ฉบับที่ 28
2 รูปแบบในการใช้ประโยชน์จาก code coverage
สรุปสิ่งที่น่าสนใจจากการอ่าน The Grug Brained Developer
เราจะนำ technology อะไรมาใช้ในการทำ code scaffolding
ทำให้ Azure DevOps pipeline เป็น dynamic ด้วย Replace Tokens task
สร้าง cron job ใน Azure Container Apps ผ่าน Dapr
เพิ่งรู้ว่าเราสามารถ share 1Password item แบบปลอดภัยได้
สวัสดี Azure Container Apps
สรุปสิ่งที่ได้เรียนรู้จากการทำ project เกี่ยวกับ Backstage
บันทึกวิธีการติดตั้ง Docker Buildkit ใน Colima สำหรับ Apple silicon
Host frontend แบบไว ๆ ด้วย Vercel
บันทึก tips ในการสร้าง content เกี่ยวกับ technical
แนะนำ extension ในการแก้ไข Solution file ด้วย Visual Studio Code
ว่าด้วยเรื่องของ Platform thinking
รวบรวมเครื่องมือ Productivity ที่น่าสนใจในเดือนกุมภาพันธ์ 2023
เรื่องที่น่าสนใจจากรายงาน The Developer Coefficient
ถามคำถามยังไงให้ได้ประโยชน์ทั้งคนถามและคนรับ
บันทึกการจัดการ Git configuration แยกกันในแต่ละ project
แนะนำเครื่องมือป้องกัน GitHub Action Workflow หยุดทำงานหลัง 60 วัน
สรุป software development journey ปี 2022
บันทึกการไปเที่ยว Taiwan ปี 2022
บันทึกการไปเที่ยว Tokyo ปี 2022
พูดถึงความสับสนที่มีในตัวเองใน Agile Framework ต่าง ๆ
สรุปสิ่งที่น่าสนใจจาก session Accessibility APIs in Android
สรุปสิ่งที่ได้จากการอ่านหนังสือ Flawless Consulting
แบ่งปันประสบการณ์การเข้า workshop เกี่ยวกับ Disabilities
ว่าด้วยเรื่องของ Collective brain fog
บันทึกประสบการณ์การเป็นหนึ่งในทีมจัดงาน Away Day ให้กับบริษัท
สรุปการเรียน Object-oriented Programming ใหม่ในปี 2022
สิ่งที่น่าสนใจจาก Thoughtworks Tech Radar ฉบับที่ 27
Developer ควรจะเก่งหลาย ๆ ด้านหรือเชี่ยวชาญเฉพาะด้าน
สรุปสิ่งที่น่าสนใจจาก session หัวข้อ How do we build quality in the software development process?
สิ่งที่ได้จากการอ่าน Top 10 Mistakes Organizations Make to Become Agile
แนะนำเครื่องมือ Steampipe สำหรับ query AWS resource ด้วย SQL
แนะนำเครื่องมือ CCMenu สำหรับดูสถานะ CICD server
สิ่งที่น่ารู้เกี่ยวกับ ID ใน table ที่ database สร้างให้ผ่าน JPA
แบ่งปันแนวทางการป้องกัน PII บน database ด้วย data masking ฉบับปี 2022
สรุปสิ่งที่น่าสนใจจากงาน XConf Thailand 2022
สรุปสิ่งที่น่าสนใจจาก Stakeholder management training ปี 2022
บันทึกการไปเป็นอาสากับ SOS Thailand
แนะนำเครื่องมือ The Tarot Cards of Tech สำหรับ brainstorming
สิ่งที่ได้เรียนรู้จากการทำงานแนว consulting มา 1 ปี
Feature lead ลองทำแล้วได้อะไรมากกว่าที่คิด
ว่าด้วยเรื่องของ API response สำหรับข้อมูลที่เป็น optional
แนวทางการสร้างเครื่องมือเพื่อ automate งาน
3 สิ่งที่ทีมสามารถพัฒนาการทำงานได้โดยที่ไม่ต้องออกแรงเยอะ
เส้นทางการ upgrade ไปสู่ Spring Boot 3
แนะนำวิธีตรวจสอบ dependency ด้วย Gradle แบบง่าย ๆ
เรื่อง(ไม่)ปกติที่มักจะเกิดขึ้นใน standup meeting
3 Technique ในการใช้แนวคิด Domain-driven design บน Legacy code
ลองใช้ Colima แทน Docker Desktop on macOS
9 แนวทางปฏิบัติที่ส่งเสริมต่อคุณภาพของการส่งมอบ software
Clean architecture มันดีสำหรับปี 2022 ไหม
สิ่งที่น่าสนใจจาก Thoughtworks Tech Radar ฉบับที่ 26
สรุปแนวทางการแก้ไข dependencies จาก OWASP dependency check
แนะนำ Midnight Commander เครื่องมือสำหรับการจัดการ file บน terminal
คำปฏิญาณตนของ Programmer
ทำความรู้จักกับ Rule engine บนภาษา Java
การ migrate Java project ไป version ใหม่ต้องคำนึงถึงอะไรบ้าง
เปรียบเทียบการเขียนชุดการทดสอบแบบ Classicist vs Mockist
เราจำเป็นต้องมี Backend-for-frontend ไหม
ลดเวลาการ setup บนคอมใหม่ด้วย Chezmoi
ว่าด้วยเรื่องของ Senior Developer
Gradle plugin สำหรับค้นหา dependency version ใหม่
เราต้องเตรียมอะไรบ้างในการ release ระบบ
ทำความรู้จักกับ PIT mutation testing
เราควรจะใช้ feature flag-driven-development ตอนไหน
สรุป software development journey ปี 2021
แนะนำ endoflife.date สำหรับการตรวจสอบ software version
เพิ่มความปลอดภัยในการเข้าถึง Amazon RDS ด้วย Bastion host
ว่าด้วยเรื่องของ Non-violent communication
บันทึกข้อควรระวังในการทำ database indexing
สรุปสิ่งที่ได้เรียนรู้จาก Architecture Night November 2021
จดบันทึกวิธีการ integrate Amazon Kinesis กับระบบที่พัฒนาใน Java Spring Boot
แบ่งปันประสบการณ์ครั้งแรกกับการทำ threat modeling workshop
จะทำชุดการทดสอบอัตโนมัติกับระบบที่เชื่อมกับ AWS ได้อย่างไร
แนะนำ direnv เครื่องมือในการจัดการ local environment variables
สรุปแนวทางการลบ credentials ออกจาก Git (อย่างถาวร) จาก GitGuardian
บันทึกการทดสอบ Database ด้วย Testcontainers ใน Docker environment
ข้อมูลน่าสนใจที่นำมาแสดงใน Spring Boot Actuator
แบ่งปันแนวทางการจัดการกับเวลาผ่าน Eisenhower Matrix
สวัสดี pnpm - ทางเลือกสำหรับ Node.js package manager
สรุปสิ่งที่ได้เรียนรู้จาก workshop Software Architecture ปี 2019
เรียนรู้การทำ Branching บน Git ผ่าน learngitbranching.js.org
ลองเขียน specification สำหรับ event-driven architecture ด้วย AsyncAPI
รู้จักกับ Software architecture แบบง่ายๆ จาก Architecture for Everyone
สรุปจากการอ่านหนังสือ นี่เราใช้ชีวิตยากเกินไปหรือเปล่านะ
สรุป Libraries และ APIs ของภาษา Java ฉบับสิ้นคิดประจำปี 2021
แนะนำ Bluesnooze - โปรแกรมตัด Bluetooth ตอน sleep สำหรับ macOS
จดปัญหาที่เจอเกี่ยวกับ MySQL และ TLS v1.2 บน Java
สรุปสิ่งที่ได้เรียนรู้เกี่ยวกับ Elasticsearch ปี 2021 (Part 2)
สรุปสิ่งที่ได้เรียนรู้เกี่ยวกับ Elasticsearch ปี 2021 (Part 1)
แนะนำ Clipy - clipboard สำหรับ macOS
iTerm2 ก็สามารถ encode Base-64 ได้นะ
สร้างระบบ Web Template ใน Spring framework ด้วย Mustache
บันทึกการแบ่งปันเรื่อง Infrastructure-as-a-Code ผ่าน Terraform ในบริษัท
มา Secure AWS credentials บน local machine ด้วย aws-vault กัน
ประยุกต์แนวคิด Event-driven architecture pattern กับ messaging queue
Deploy Angular application บน Local Kubernetes
Apply CSS ที่ขึ้นอยู่กับจำนวนของ element อย่างไร
วิธีการ debug Angular application ใน Jetbrains IDE (update ปี 2021)
บันทึกการแบ่งปันเรื่อง Firebase Cloud Messaging ในบริษัท
บันทึกการติดตั้ง Angular 11 testing ด้วย Karma และ PhantomJS
สรุป software development journey ปี 2019-2020
ลอกแนวทางการ setup environment บน macOS ของผมมาใน Windows
จดคำถามจาก session Data Mesh: A paradigm shift towards Domain Oriented Data Platform
ข้อควรระวังการใช้งาน Lombok library ในภาษา Java
ประยุกต์การใช้งาน Pre-request Script ใน Postman สำหรับการทดสอบ API
บันทึกการแบ่งปัน Productivity tools สำหรับ macOS ให้กับคนในบริษัท
บันทึกการเก็บ metrics เกี่ยวกับ consumer ใน API เพื่อวัด business value (Part 1)
มาเปิด Logs กับ APM ของ Datadog ใน Java application ที่ deploy บน Kubernetes
ทำความรู้จัก Amazon Deequ กับการจัดการ Data quality
บันทึกการแบ่งปันเรื่อง Version Control ในบริษัท
ลดความซับซ้อนในการใช้ Azure KeyVault ใน Azure DevOps ด้วย Variable groups
ทำการ Refactor โค้ด Scala ด้วย High-order function
สิ่งที่น่าสนใจจากงาน Don’t Repeat Yourself: Accelerate the initial phase of software development with common framework and enablement tools
Experience Using Azure Databricks at ExxonMobil for a month
ทำ E2E testing กับ RESTful และ Kafka ด้วย Cucumber
ว่าด้วยข้อเสียของ field injection ใน Spring framework
บันทึกและแชร์ Terminal ด้วย asciinema
จดวิธี trigger Azure DevOps pipeline ผ่านอีก pipeline นึง
Deploy AKS cluster พร้อมกับ Datadog agent ผ่าน Terraform
เปลี่ยน version ของ Python ด้วย pynenv
นำ Docker image จาก non-production ขึ้น production cluster บน OpenShift
จัดการ error response ของ OAuth2 authentication บน Spring
บันทึกการแบ่งปัน Four Key Metrics ให้เพื่อนๆ ในทีม
แสดง Shortcut แบบ real-time บน IntelliJ IDEA ด้วย Presentation Assistant Plugin
ลองเชื่อม Swagger UI กับ Azure Active Directory OAuth
มาทำ API Security ใน Spring Boot ตาม OWASP API Security Project กัน (Part 3)
มาทำ API Security ใน Spring Boot ตาม OWASP API Security Project กัน (Part 2)
มาทำ API Security ใน Spring Boot ตาม OWASP API Security Project กัน (Part 1)
จด Tips เล็กๆน้อยๆ การทำ Configuration บน local environment ของ Spring
บันทึกการทำ Integration testing ด้วย Spring Embedded Kafka
Track การ coding ของตนเองด้วย WakaTime
ลองเล่น Load Balancing ง่ายๆ ด้วย HAProxy
สรุปการแบ่งปันในทีมเรื่อง Monitoring ระบบด้วย Prometheus และ Grafana
ว่าด้วยเรื่องของ Evolutionary architecture กับทีม development
บันทึกการทำ Database migration ด้วย Flyway
บันทึกการทำ Performance Testing ด้วย Gatling
จัดกลุ่มการทดสอบด้วย Gradle TestSets plugin บน Spring Boot
คำถามที่น่าสนใจในการนำแนวคิด Agile มาใช้ (Part 2)
คำถามที่น่าสนใจในการนำแนวคิด Agile มาใช้ (Part 1)
Welcome to my blog!
subscribe via RSS