Go Programming - Intermediate to Advanced

Prafful Daga

This will be intermediate to advance level course of programming with Go. Though coverage includes discussion on fundamentals of programming with Go but focus will be more on other aspects of Go programming as prescribed below. Extensive examples for fundamentals of programming with Go, built-in dat...

+ show more

HRDC Non-Claimable

Part Time
3 hours daily, 6 days: 7pm - 10pm
Upcoming Courses
What to Expect

40+ live code examples with discussion, explanations and understanding. Also expect good number of practice exercises and assignments to help with learning. Expect quick discussion on topics related to fundamentals of programming in Go i.e. history, variables, datatypes, control flow statements, loops, arrays etc. However, expect exhaustive and detailed discussion on advance topics like Concurrency, Network programming, API Development, Implementation of CI/CD pipeline with Jenkins, TTD (test driven development) with Go, Database interaction with ORM, Remote method invocation using gRPC, Project structuring and dependency management using Packages and Module.

Who Should Attend This Course
  • Anyone expecting to learn about nitty gritty of working on projects built with Go and contribute to same as a developer.
  • Any one expecting to migrate their project from any other backend programming language like Node.JS, Python, Ruby, PHP, Java to Go language.
  • Anyone expecting to create the backend prototype of their start-up idea.
  • Anyone willing to learn about benefits of programming in Go.

Participants are required to have basic backend programming using any programming language

General Program

The Basics

  • History
  • Packages & imports
  • Variables, constants & enums
  • Functions
  • nil and zero values
  • Pointers
  • Loops
  • Errors
  • Defer, panic and recover
  • init functions
  • Arrays
  • Slices
  • Maps
  • Structs
  • Methods
  • Interfaces

The Intermediate

  • Reflection
  • Three laws of reflections
  • Tags
  • Creating functions on the fly
  • Data structures with Go
  • Queue
  • Stack
  • Set
  • Linked list
  • Heap
  • Sorting algorithms
  • Binary search tree
  • Concurrency
  • Goroutines
  • Channels & Pipelines
  • Select
  • WaitGroup
  • Timers, tickers and timeouts
  • Context
  • Mutex
  • Atomic
  • Input & Output
  • Readers and writers
  • Network programming: HTTP Server
  • Requests & Middleware
  • Network programming: Sockets

The Advanced

  • Idiomatic Go
  • Testing & Monitoring
  • Dependency Management with Modules
  • Documentation
  • Using C code from Go
  • Protocol buffers
  • gRPC
  • Logging
  • Connecting to SQL Database
  • ORM with GORM
  • API development & microservices
  • Containerization and deployment
  • CI and CD with Go and Jenkins
  1. Will I get a certificate at the end of the course?

    Complete Reskill Programs: Absolutely! The certificate will be issued by airasia academy and powered by Google Cloud.

    Byte Sized Courses: Yes, we will award you with a certificate for all byte-sized courses with EIGHT (8) learning hours and above. The certificate will be issued by airasia academy and powered by Google Cloud. If you completed less than 8 hours, no certificate will be given.

    BINA Digital: Yes, we will award you with a certificate upon full attendance of the programme. The certificate will be issued by airasia academy and powered by Google Cloud.

  2. Can I get a job after attending the course?

    The certificate from airasia academy is recognised by the industry which is sufficient to land you a job. But, if you manage to stand out and earn excellent results, our trainers may recommend you to companies within the airasia group and Google Cloud ecosystem, or to their extensive network of businesses. That means you will have a good shot kickstarting a new career!

  3. Who can I refer to get more insight of the courses?

    You may drop us a WhatsApp message at 010-5008787. Kindly take note that our working hours are 9 am - 6 pm from Monday to Friday and our friendly team will reply to you as soon as we can. However, do expect a slight delay in reply in enquiries over the weekend. Or you can follow our social media accounts @airasiaacademy (Facebook, Instagram, Linkedin)

  4. What payment methods do you accept?

    We currently accept debit card and credit card. We're also happy to announce that we now have interest-free* instalment plans!

    *Interest-Free Instalment plans are currently available for ILT courses only, and applies to Maybank and Public Bank credit card holders, with a minimum purchase of RM500 and above.

  5. Do you offer any free learning resources?

    Yes, we do! Kindly refer to the Resources page. We have conducted free introductory sessions via our YouTube channel where you can watch it anytime and anywhere.

Meet your instructor
Prafful Daga

Prafful is a highly experienced project management professional, developer & mentor offering an experience of 15+ years in various sectors of e-Governance, IT, IT-ES, Media, Mobile, Embedded, Web Development, Game Development & Digital Marketing with 2 years of International Experience in Tokyo, Japan.

He possesses excellent communication, technology and training skills summed up with proficiency in C & Embedded C, C++, OpenGL, WebGL, Unity3D, OpenCV, Java, J2ME, J2EE, Spring, Hibernate, Struts, Microservices, Android Studio, Angular, Google Analytics, Jquery, Javascript, HTML5, CSS3 & IoT.

Besides that, he also has hands-on experience of working with open source CMS like Joomla, Moodle, Drupal, Wordpress. Other than that, he has practical exposure of working in Windows, Macintosh, Android, Linux/Unix & virtual environments.

HRDC Non-Claimable

Part Time
3 hours daily, 6 days: 7pm - 10pm