Modern Software Development with Azure, .Net 5, Docker, GitHub Action, ด้วยLinux Environment บน WSL2
เรียนรู้แนวทางการพัฒนา Web Application ด้วย .NET 5.0 ร่วมกับ Mysql และเตรียม Release Package เป็น Docker Image เพื่อ Deploy ไปยัง Azure App Service แบบอัฒโนมัติด้วย GitHub Action และ Setup Local Machine ด้วย WSL2 + Docker Desktop + Ubuntu 18.04

ผมได้มีโอกาสบรรยายให้น้องๆในมหาวิทยาลัยแห่งนึงร่วมกับแอรอนในนาม Codesanook ครับ โดยเป็นหัวข้อที่เราอยากนำประสบการณ์ที่ใช้ในการทำงานจริงให้น้องๆได้มีโอกาสเรียนรู้เผื่อที่จะได้ฝึกฝนเตรียมตัวตอนที่มีโอกาสได้ทำงานในชีวิตจริงๆครับ
สิ่งที่เน้นในเนื้อหาคือเรื่องของการใช้เครื่องมือที่ช่วยให้เราสามารถพัฒนาระบบได้เร็วขึ้น ลดขึ้นตอนการทำงานซ้ำๆลงได้ระดับนึงครับ รวมไปถึงยังช่วยในการติดตั้งและดูแลรักษาได้ง่ายด้วยครับ
สิ่งที่จะได้จากบทความ
KubeOps Tech Talk เป็นโครงการของ kubeOpsSkills ที่เชิญผู้เชี่ยวชาญในแวดวงการเขียนโปรแกรมในประเทศไทยมาร่วมกันแชร์ประสบการณ์ครับผม โดยเนื้อหาในครั้งนี้ผมจะแชร์การทำงานในรูปแบบ Remote Working ที่ทำมาเป็นระยะเวลาหลายปีครับ
ผมขอฝาก Video ที่ได้มีโอกาสบรรยายในโครงการ KubeOps Tech Talk ร่วมกับ kubeOpsSkills ด้วยนะครับ ^^
Youtube: https://youtu.be/8rrAHLQi8xA
ตัวอย่างเนื้อหาบางส่วนนะครับ
ทำบริษัทเล็ก — แบบ Remote ต้องปรับตัวยังไงบ้าง, ความรับผิดชอบกับเรื่องของเวลา
- ต้องมีความเป็นมืออาชีพสูงมากครับ โดยเน้นเรื่องการบริหารเวลาที่เราต้องจัดสรรให้ดี เพราะงานมันจะอยู่รอบตัวเราตลอดตั้งแต่เราตื่นนอน เราควรกำหนดขอบเขตของช่วงเวลาทำงานและการพักผ่อนให้ชัดเจน
- มีการสื่อสารที่ชัดเจนและมีประสิทธิภาพ เช่น การสรุปสิ่งที่ต้องการพูดก่อนเข้าประชุมเพื่อให้เนื้อหากระชับและทีมเข้าใจได้อย่างเป็นลำดับขั้นตอน
- มีความสามารถในการพัฒนาความรู้ด้วยตัวเองและร้องขอความช่วยเหลือในช่วงเวลาที่เหมาะสม
บริการงานต่าง Timezone กันยังไง
- อาศัยการตกลงร่วมกันของทั้งทีม โดยแบ่งช่วงเวลาให้ไม่หนักจนเกินไป เช่นบางประชุมจัดตอนเช้าไทย, ดึก USA หรือบางประชุมก็จัดตอนดึกไทย, เช้า USA
- ใช้ Tool ช่วยหาเวลาที่เหมาะสมมาให้ทีมได้ร่วมกันเลือกประชุม
การพัฒนาความรู้จากที่บ้าน (Course Online/ Offline, Seminar Online/ Offline)
- ความรู้ทุกวันนี้มีให้เราศึกษาเยอะมากๆครับทั้งแบบที่เสียเงินและไม่เสียเงิน
- วิธีที่ผมชอบใช้มากๆคือ เราอยากเป็นคนยังไงเราก็ควรไปอยู่ในจุดที่มีคนเหล่านั้นอยู่ ในมุมของผมคือผมเลือกเข้าไปอยู่ตาม Facebook Group ต่างๆที่ผมสนใจ และขอติดตามหรือขอเป็นเพื่อนกับบางคนใน Facebook เพื่อให้ New Feeds ของผมมีเรื่องใหม่ๆที่น่าสนใจให้ติดตามอยู่เสมอครับ
- พอเริ่มมีข้อมูลก็จะทำให้เราเห็น Course Online/ Offline, Seminar Online/ Offline ให้เราได้เลือกเรียนได้อย่างสะดวกครับ
- ส่วนตัวแล้วถ้าเลือกได้ อยากเจอกันแบบ Offline มากกว่า Online ครับ ทั้ง Course/Seminar เลยครับ เพราะทำให้มีโอกาสได้คุยได้รู้จักเพื่อนใหม่มากกว่าแบบ Online รวมถึงได้อินกับบรรยากาศงานมากกว่าด้วยครับ
การแบ่งปันความรู้ (Medium, Codesanook, .Net Thailand, Azure Community Thailand)
- สำหรับผมการพัฒนาองค์ความรู้ที่ดีที่สุดของผมเองคือการแบ่งปันความรู้ให้กับคนอื่นครับ เพราะทำให้เราได้มีโอกาสทบทวน เรียบเรียงความเข้าใจ และสรุปแนวทางในการสื่อสารให้คนที่รับฟังเห็นภาพและเข้าใจได้ง่ายๆครับผม
- การทำงานในทุกวันนี้เราไม่สามารถหลีกหนีการทำงานเป็นทีมได้เลยครับ การแบ่งปันความรู้เช่นการเขียนบทความ, ช่วยแนะนำในกลุ่ม Facebook เป็นแนวทางที่ช่วยให้เราพัฒนาตัวเองได้ดีมากๆเลยครับ และยังทำให้สังคมโปรแกรมเมอร์เราพัฒนาขึ้น น่าอยู่ขึ้นครับผม
ขอบคุณมากๆครับผม ^^
นายป้องกัน
แนวทางการพัฒนา Event-Driven Architectures ด้วย Azure Event Grid เพื่อเชื่อมต่อข้อมูลได้จากหลากหลายแหล่งข้อมูล และ Serverless Application โดย Azure Base Camp เป็นรายการที่เราตั้งใจทำขึ้นมาเพื่อแบ่งปันความรู้และประสบการณ์ในการใช้คลาวด์จาก Microsoft Azure ที่จัดโดย Microsoft Thailand ครับผม
ผมขอฝาก Video ที่ได้มีโอกาสบรรยายในโครงการ Azure Base Camp ร่วมกับ Microsoft Thailand ด้วยนะครับ ^^
Youtube: https://youtu.be/aaRpfOKIffQ
Presentation: https://1drv.ms/p/s!At70Q7njCy4WgvBJsX008VlgsE0Qzg?e=sK1nSm
ตัวอย่างเนื้อหาบางส่วนนะครับ