GOVTECH Singapore

Tech for public good

May 22 - Aug 22

Website|

Skills: ReactJs • VueJs • ExpressJs • Jest • TypeScript • Docker

Blog

4 min read


Introduction

The Government Technology Agency of Singapore (GovTech) is a public sector tech company that spearheads Singapore's digital transformation and development to build a Smart Nation for the country's citizens and business.

For this internship, I have had the privilege of working in the Government Digital Services (GDS) tribe under the Engineering Productivity (ENP) team, specifically with the Developer / Documentation portal team, whose goal is to increase availability, accessibility and discoverability of government-related products.

cohesion
Dev/Doc portal team
Experience

The onboarding process here was very much different as compared to the previous time I interned, with a lot more security configurations required to set up (getting a dedicated company laptop definitely helped) during the initial onboard. The team actually came back to office on my first day to welcome and help me onboard onto the team, which took almost an entire day!

During the internship, I mainly worked on the Documentation Portal for most of my time there. I was in charge of improving the SEO of the site which seemed fairly straightforward at first, but proved to be more complicated than it seems due to a variety of reasons. The main problem was with Docsify (Documentation Site Generator), where a supposedly simple change from hash to history mode to remove the hashbang (#) in the URL was not working as intended due to conflicting server configurations. This was important as Googlebot would otherwise be unable to crawl URLs with a hashbang (#) in it (more about the topic can be read here).

Ultimately, with the help of my manager, we had to make changes to the core Docsify library itself in order to support the use case of the team. I (thankfully) managed to clear this before the end of the internship, and my manager actually updated me after I left the company, that there was an approximately 1200% increase in pages indexed by Google!

govtech-cy-me
My internship manager / teach lead (right) and myself (left)

Another task assigned to me was to deploy an end-to-end system with OpenTelemetry (OTEL) and Elastic Observability to collect telemetry data such as logs, traces, and metrics. Unfortunately, I had to hand over to a colleague after doing some initial preliminary research due to the lack of time, but it was still a great learning opportunity nonetheless.

Learnings

I was exposed to a great deal of new technologies during my time here, such as OpenTelemetry (OTEL), Elastic Observability, and various cloud products (namely AWS ECS, Fargate, VPC). It was also in GovTech where I first experienced Test-Driven Development (TDD) with Jest.

The software development processes here were also a lot more mature when compared to my previous internship in a startup. There was a lot more autonomy given to team members here, and it took me awhile to learn that asking for help is normal, and it's not representative of one’s ability and proficiency in programming.

I also had the opportunity to have my code reviewed by others, as well as review some code my colleagues wrote. While each code review took me awhile to complete, it reinforced my understanding of the importance of writing clean and readable code, and I am grateful to have been given the opportunity to perform code reviews (inexperienced as I may be).

Final thoughts

The GovTech internship program was in many ways an eye-opening experience, and I was appreciative of the fact that despite being an intern, I was able to work on normal tasks and experience the day-to-day life of being a employee at the company, rather than going through a separate, non-related program crafted just for interns.

govtech-grad
Internship Graduation Ceremony hosted by Young Talent Programme Office (YTPO)

However, I would say that the best part of being in this company is the people that I‘ve met along the way, especially those in the team I was in, from the UI/UX designers, to the developers, to the one other fellow intern in my team, and finally my internship manager. Being able to witness the sharp minds and work ethic of these brilliant people in action have been nothing short of a humbling and inspiring escapade.

Chew Yi Xin 2023  •  Last updated Feb 2024