ประสบการณ์สัมภาษณ์งาน IT ทางโทรศัพท์

ช่วงนี้ว่างงานแต่ก็มีคนรู้จักแนะนำให้สมัครงานอยู่หลายที่ ซึ่งก็มีเจ้าหน้าที่ของบริษัท IT ยักษ์ใหญ่แนะนำให้ผมสมัครงานในตำแหน่งต่างๆ ไม่ว่าจะเป็น ​DevOps, Community Engineer, Cloud Architect ฯลฯ แต่ไม่เห็นมีใครให้ผมเขียนโค้ดสักคนเลยแฮะ เอาเป็นว่าวันนี้ต้องสัมภาษณ์งานทางโทรศัพท์กับบริษัท IT ยักษ์ใหญ่เจ้านึงในตำแหน่ง Community Engineer + Technology Evangelist ไม่รู้ว่าตำแหน่งอะไรกันแน่ แต่ก็มาเล่าให้ฟังก่อน ก่อนอื่นต้องบอกไว้ก่อนเลยว่าผมไม่ค่อยรู้ product และ services ของบริษัทนี้มากนัก เคยใช้งานบริการ Cloud Services ของบริษัทนี้บ้างตามโอกาส ครั้งนี้เป็นครั้งแรกที่สัมภาษณ์งานทางโทรศัพท์ก็รู้สึกตื่นเต้นดี การสัมภาษณ์เป็นเรื่องของแนวคิดที่เกี่ยวกับผลิตภัณฑ์ และวิธีการชักจูงให้คนมาใช้งาน ผมว่ากิจกรรมของ Developer Advocate และ Tech Evangelist เป็นสิ่งสำคัญ ย่อยของที่ยากและถ่ายทอดออกมาให้ดูง่าย สิ่งเหล่านี้ผมก็เคยทำมาก่อนกับ tutorial ใน thaiopensource.org เพราะการเริ่มมันยาก หากเริ่มต้นได้ดีและเข้าใจได้เร็วก็จะประยุกต์ใช้งานได้เร็วมากขึ้น การ adopt technology ก็จะทำได้เร็วมากขึ้น

Microsoft & Docker

ช่วงงาน Docker Con 2015 ที่ผ่านมา Microsoft มาโชว์ Docker Container บน Azure และเครื่องมือที่ช่วยให้ DevOps ทำงานได้ง่ายมากขึ้น เช่น VisualStudio Code รองรับไฟล์ Dockerfile และ Docker Compose แล้ว , VisualStudio Online มี CI ที่รวม Docker เข้าไปด้วย ช่วยให้ Build, Push, Pull, Deploy ใน CI ทำงานได้ง่ายมากขึ้น และสุดท้าย Azure รองรับ Container App แล้ว กดใช้งานได้เลยผ่านหน้า Portal ใหม่
จากที่เล่ามาผมได้ลองอยู่แค่อันเดียวคือ VisualStudio Code มี IntelliSense ใน Dockerfile ในส่วนคำสั่ง แต่ในส่วนชื่อ image มันไม่ขึ้นให้ เดี๋ยวไว้ว่างๆ ค่อยลองใม่

ใช้งาน Docker บน Azure แบบรวดเร็ว

การใช้งาน Docker บน Azure ทำได้หลายวิธี ใช้ผ่าน CoreOS ที่มี Docker อยู่แล้ว หรือการสร้าง Ubuntu Instance แล้วค่อยติดตั้ง Docker ลงไปอีกที หรือใช้ Docker Machine ซึ่งก็ตามความสะดวกของแต่ละท่าน สำหรับท่านที่ชอบใช้งานผ่านหน้าเว็บก็สามารถสร้าง Instance ที่มี Docker มาพร้อมได้เลย มีข้อแม้ว่าจะต้องเรียกผ่านหน้า Azure Portal ตัวใหม่เท่านั้น

วิธีการสร้างก็ง่ายมาก ก่อนอื่นต้องหา Docker ให้เจอก่อน กด +New > Compute > Azure Marketplace
Continue reading ใช้งาน Docker บน Azure แบบรวดเร็ว

ใช้ Azure CLI ผ่าน Docker Container

สำหรับท่านที่ใช้ Azure อยู่น่าจะรู้จัก Azure CLI โดยเฉพาะอย่างยิ่งท่านที่ใช้ Linux และ OSX อาจจะได้ใช้กันอยู่แล้ว เพราะการใช้ Command Line มันเร็วกว่าการที่จะไปใช้ผ่านหน้าเว็บไซต์แบบปกติ แต่การติดตั้ง Azure CLI ก็แลกมาด้วยความลำบาก โดยเฉพาะบน Linux ที่มักจะมีปัญหาเรื่อง Node.js และ npm เอาเป็นว่าคุณสามารถใช้งาน Azure CLI ได้จาก Docker Container โดยไม่ต้องติดตั้ง Azure CLI เลยจะดีกว่า วิธีการก็ง่ายมาก เพราะ Microsoft ได้ทำ Container มาให้เราใช้เรียบร้อยแล้ว

วิธีใช้งานก็ง่ายมาก ใช้คำสั่ง
docker run -it microsoft/azure-cli
Continue reading ใช้ Azure CLI ผ่าน Docker Container

มาเล่น Azure Marketplace กัน

ครั้งที่แล้วพาเล่น Google Cloud Launcher เพื่อไม่ให้น้อยหน้ากัน ลองมาดูของ Azure บ้าง ในส่วนของ Azure จะมี Azure Marketplace ด้วยเช่นกัน คุณสามารถซื้อ Application ที่คุณต้องการพร้อมบริการ Deploy อัตโนมัติบน Cloud ของ Microsoft อย่าง Azure ได้ อย่างง่ายๆ เลยทีเดียว การใช้งานสามารถใช้งานได้ 2 ที่ คือผ่านหน้า Azure Marketplace หรือ Azure Marketplace ใน Azure Portal ก็ได้

สำหรับการเข้าใช้ Azure Marketplace ผ่านหน้า Azure Portal ก็ง่ายมากๆ กด New+ > เลือกบริการสักอันนึง ดูข้างล่างสุดจะมีเมนูให้เลือกเป็น Azure Marketplace อย่ารอช้ากดเข้าไปเลย
Continue reading มาเล่น Azure Marketplace กัน

มาเล่น Azure Deploy กัน

เมื่อปีที่แล้วมีโครงการนึงน่าสนุกดีเป็นบริการชื่อ Azure Deploy สามารถเอาโค้ดจาก Git Repository ไป deploy ที่ Azure ในเบื้องต้นรองรับ WebSite แต่ก็สามารถประยุกต์ใช้งานร่วมกับบริการอื่นๆ ได้ ผ่าน ARM Template Azure Deploy เหมาะสำหรับผู้ที่ต้องการ Deploy App หรือทดลองใช้ Application อย่างรวดเร็ว โดยใช้ Azure Account ของตนเอง ซึ่งปุ่ม Deploy จะอยู่ที่หน้า GitHub Repository หรือหน้าเว็บไซต์ก็ได้ ซึ่งตอนนี้ Azure Deploy ใช้งานร่วมกับ Public Repository ได้เท่านั้น รอสักระยะอาจจะมีบริการร่วมกับ Private Repository 🙂
ครั้งนี้มาลองดูตัวอย่างง่ายๆ กันก่อน Azure Website รองรับการเขียนโปรแกรมภาษา มาลอง Node.js กันเลยดีกว่า จะได้รู้ว่า Azure Deploy ก็สามารถ deploy Node.js App ให้เราได้ ใช้ express สร้าง Node.js App เปล่าๆ สร้างไฟล์ REAME.md ใส่ข้อมูลปุ่ม Azure Deploy ลงไป ซึ่งมีแค่ link และรูปภาพง่ายๆ แค่นี้
Continue reading มาเล่น Azure Deploy กัน

มาเล่น Ubuntu Core บน Azure กัน

Ubuntu Core เปิดตัวมาได้ระยะหนึ่งแล้วซึ่งทาง Canonical ตั้งเป้าไว้เอาไว้ว่า เอามาใช้เป็นระบบปฏิบัติการสำหรับ virtualization และ cloud นอกจากนี้ยังสามารถเอาไปใช้กับ Embedded System รองรับ CPU ตระกูล ARM ด้วย Ubuntu Core สามารถใช้งานผ่าน Cloud Service Provider อย่างเช่น AWS, Azure ได้แล้ว ณ ช่วงเวลาที่เขียน how-to นี้ Ubuntu Core ยังอยู่ในช่วง Alpha 2 หากเข้าไปดูรายการ image ใน service catalog จะยังไม่มีให้ใช้ทั้ง Azure และ AWS ดังนั้นช่วงนี้อาจจะต้องใช้ command line กันไปก่อน หาก Ubuntu Core ออกตัวจริงมาแล้ว จึงจะสามารถใช้งานผ่าน service catalog ได้ง่ายมากขึ้น
มาลอง Ubuntu Core บน Azure กัน อันดับแรกติดตั้ง Azure CLI กันก่อนดังนี้
sudo apt-get update
sudo apt-get -y install nodejs npm nodejs-legacy
sudo npm install -g azure-cli
azure account download
Continue reading มาเล่น Ubuntu Core บน Azure กัน

ใช้ Knife จัดการ vm ใน Azure

Knife มีส่วนเสริมในการจัดการ virtual machine บน Microsoft Azure ด้วยคือ knife-azure สามารถจัดการ life cycle ของ virtual machine ได้ สั่ง knife bootstap เพื่อลงทะเบียนกับ Chef Server ได้เลย มาลองใช้งานกัน
ติดตั้ง Knife Azure โดยใช้ ChefDK
chef gem install knife-azure
ดาวน์โหลด subscription file เพื่อใช้งานร่วมกับ knife azure plugin จากนั้นแก้ไข knife.rb เพิ่ม config เข้าไปดังนี้
Continue reading ใช้ Knife จัดการ vm ใน Azure

ใช้งาน Docker บน Azure

Azure เป็นบริการ Cloud Computing ของ Microsoft ซึ่งบริการพื้นฐานอย่างการใช้งาน Virtual Machine เป็นบริการที่ใช้งานได้ง่ายและสะดวกมาก ซึ่ง Microsoft มีบริการระบบปฏิบัติการที่หลากหลาย ทั้ง Linux และ Windows ซึ่งระบบปฏิบัติการที่เป็นที่นิยมใช้กันมากที่สุดบน Azure คือ Ubuntu และระบบปฏิบัติการน้องใหม่มาแรงที่เพิ่งเริ่มให้บริการมาไม่นานมานี้คือ CoreOS ซึ่งคุณสามารถใช้ Docker ได้บน CoreOS ได้เช่นกัน ซึ่งหากใช้ CoreOS จะสามารถใช้งาน Docker ได้เลยโดยไม่ต้องติดตั้งเพิ่มเติม แต่ถ้าใช้ Ubuntu จะต้องติดตั้ง Docker เพิ่มเติม
ลองมาดูวิธีการใช้งาน Docker บน Ubuntu ที่ใช้งานบน Azure กัน เริ่มต้นจากสร้าง Virtual Machine ขึ้นมาก่อน แน่นอนเราจะใช้ Ubuntu กัน

Continue reading ใช้งาน Docker บน Azure

มาเล่น CoreOS บน Azure กัน

แถลงข่าวกันมาหลายเดือนตอนนี้ CoreOS มีให้บริการบน Azure แล้ว สำหรับท่านที่เป็นแฟน CoreOS และ Docker พลาดไม่ได้เลยกับบริการนี้บน Azure ซึ่งคุณไม่ต้องกังวลเรื่องติดตั้ง CoreOS บน Azure อีกต่อไป และที่สำคัญสามารถใช้งาน Docker ได้เลย ไม่ต้องเขียน Cloud Config ให้ยุ่งยากอีกต่อไป สามารถเรียกใช้ etcd และ fleet ได้เลย สำหรับการใช้งาน CoreOS ก็ง่ายมากๆ เข้าไปที่ Azure Gallery จากนั้นคลิกสั่ง deploy กันได้เลย ง่ายๆ แค่นี้
เลือก Create Virtual Machine จาก Gallery

Continue reading มาเล่น CoreOS บน Azure กัน