diff --git a/content/post/ten-years-in-tech.md b/content/post/ten-years-in-tech.md index e7b442c..0b8f448 100644 --- a/content/post/ten-years-in-tech.md +++ b/content/post/ten-years-in-tech.md @@ -12,39 +12,40 @@ tags: 2025 marks my tenth year in tech. 15 year old me would not have imagined that 25 year old me would be having so much fun with a random hobby he picked up but here I am, pursuing tech as a career! -To mark ten years in tech, I thought it would be fun to document my journey into tech. +To mark ten years in tech, I thought it would be fun to document my journey in tech so far. I also wanted to point out the amount of "failures" I received throughout my ten year journey, to serve as a reminder that everyone starts somewhere and getting started it always the hardest step. ## Secondary School: 2014 - 2016 - Got a [Samsung Galaxy Ace 2](https://en.wikipedia.org/wiki/Samsung_Galaxy_Ace_2) -- Started getting into Android ROMs, installing things like [Cyanogenmod](https://en.wikipedia.org/wiki/CyanogenMod) and +- Got into Android ROMs, installing ROMs like [Cyanogenmod](https://en.wikipedia.org/wiki/CyanogenMod) and [MIUI](https://www.reddit.com/r/Android/comments/18ni90y/its_the_sad_end_of_custom_roms_on_xiaomi_devices/) -- Started lurking in the [XDA forums](https://xdaforums.com/) -- Decided to start learning Android development from a YouTube series (I couldn't find the series anymore 😔) -- Did not really understand Android development so decided to give up -- Printed out [tutorials on Java](https://www.javatpoint.com/java-tutorial) and trying to learn Java (but not to much - success) -- Still felt really intrigued by programming so started visiting the - [public library](https://www.nlb.gov.sg/main/visit-us/our-libraries-and-locations/libraries/yishun-public-library) +- Started lurking in [XDA forums](https://xdaforums.com/) +- Decided to (try) learn Android development from a YouTube series by [xda-developers](https://www.youtube.com/@xda/videos) (I couldn't find the series anymore 😔) +- Did not really understand Android development and gave up (Failure #1) +- Printed out [tutorials on Java](https://www.javatpoint.com/java-tutorial) and trying to learn Java (yes, I printed them out and bound it) +- Did not enjoy learning Java too much and gave up again (Failure #2) +- Wanted to find the "perfect language" to start programming +- Visited the + [public library](https://www.nlb.gov.sg/main/visit-us/our-libraries-and-locations/libraries/yishun-public-library) many times to borrow books on programming like [C#](https://www.dummies.com/book/technology/programming-web-design/csharp/c-2010-all-in-one-for-dummies-292899/) and [web development](https://www.amazon.sg/HTML-CSS-Design-Build-Websites/dp/1118008189) -- Tried setting up the family computer ([Toshiba Satellite](https://en.wikipedia.org/wiki/Dynabook_Satellite)) to dual boot [Ubuntu](https://ubuntu.com/) and Windows, accidentally wiped the - Windows partition instead 🤡 +- Tried setting up the family computer ([Toshiba Satellite](https://en.wikipedia.org/wiki/Dynabook_Satellite)) to dual boot [Ubuntu](https://ubuntu.com/) and Windows +- Accidentally wiped the Windows partition instead 🤡 (Failure #3) - Discovered [a video about why programming is important](https://youtu.be/Dv7gLpW91DM?si=8Vdb2-jIO8e-PuRc)
-- Ignited a deeper interest in me to learn more about it and treat it as a fun hobby and community -- Dad brought me to [Bras Basah](https://en.wikipedia.org/wiki/Bras_Basah) to browse second-hand bookstores and I got - books about [C++](https://www.amazon.sg/Absolute-C-Walter-Savitch/dp/0133970787) and [iOS development](https://www.amazon.com/iOS-Programmers-App-Driven-Approach-Developer/dp/0133965260) +- Ignited a deeper interest in me to learn more about it and treat it as a fun hobby and find a wider community to enjoy it with +- Dad brought me to [Bras Basah](https://en.wikipedia.org/wiki/Bras_Basah) to browse second-hand bookstores +- Got books about [C++](https://www.amazon.sg/Absolute-C-Walter-Savitch/dp/0133970787) and [iOS development](https://www.amazon.com/iOS-Programmers-App-Driven-Approach-Developer/dp/0133965260) - Installed [Visual Studio](https://visualstudio.microsoft.com/) to learn C++ -- Did not have an Apple machine to learn iOS development (yes, the book became useless) +- Did not have an Apple machine to learn iOS development (yes, the book became useless) (Failure #4) - Started picking up C++ and understanding the fundamentals of programming -- But really struggled with understanding pointers (who doesn't on their first attempt) +- But really struggled with understanding pointers (who doesn't on their first attempt) (Failure #5) - Took the [O-Levels](https://en.wikipedia.org/wiki/Singapore-Cambridge_GCE_Ordinary_Level) and did really well (L1R4 of 4 and L1R5 of 6) - Faced with making a tricky decision of choosing [Junior College](https://en.wikipedia.org/wiki/Junior_college_(Singapore)) or [Polytechnic](https://en.wikipedia.org/wiki/Institute_of_technology) -- Unsure if I should study chemical engineering or information technology (yes, I did pick a JC as the very last choice) +- Unsure if I should study chemical engineering or information technology ![](post/ten-years-in-tech/school_choices.png) @@ -61,21 +62,29 @@ To mark ten years in tech, I thought it would be fun to document my journey into - Built my very first [proper project](https://github.com/woojiahao/chat-bot) for school (a chat bot!) -- Joined [The Programmers Hangout](https://theprogrammershangout.com/) and met a community of people who were equally in love with tech and interested -- Became a moderator on the server and continued meeting friends -- Started side projects to explore [different technologies like Kotlin](https://github.com/woojiahao/taiga) -- Was introduced to [MightyAim](https://e27.co/startups/mightyaim/) by a friend and working for a while as the only Android developer, building a platform SDK to transform existing applications to adopt a gesture-based workflow -- Received my first ever paycheck (of SGD 300!) -- Went back to Bras Basah to buy books on algorithms and operating systems with my newfound wealth -- Attended [PHP Conference Asia 2018](https://2018.phpconf.asia/) even though I don't know PHP -- Was invited to teach a workshop for students over the semester break, so put together ["Introduction to Android Development with Kotlin"](https://woojiahao.com/KotlinToDo/#/) -- Discovered my love for teaching and writing -- Started my blog +- Joined [The Programmers Hangout](https://theprogrammershangout.com/) +- Met an amazing community of people who were equally passionate about tech +- Became a moderator on the server and continued making friends from around the world +- Started side projects to explore different technologies like Kotlin like a [Discord moderation bot](https://github.com/woojiahao/taiga), [Spotify API wrapper](https://github.com/woojiahao/java-spotify-wrapper), and [extensible Markdown to PDF conversion library](https://github.com/omnius-project/kMD2PDF) +- Introduced to [MightyAim](https://e27.co/startups/mightyaim/) by a friend +- Working at MightyAim for a while as an Android developer, building an SDK to allow existing applications to adopt a gesture-based workflow +- Received my first paycheck (of SGD 300!) +- Went back to Bras Basah to buy books on algorithms and operating systems with my newfound wealth 🤑 +- Attended [PHP Conference Asia 2018](https://2018.phpconf.asia/) even though I didn't know PHP (and still don't) +- Invited to teach a workshop for students over the semester break +- Put together ["Introduction to Android Development with Kotlin"](https://woojiahao.com/KotlinToDo/#/) and taught over 15 students live! +- Discovered my love for teaching and writing through this experience +- Started my [blog](https://github.com/woojiahao/woojiahao.github.io/tree/master) - Got placed to [DBS Bank](https://www.dbs.com.sg/private-banking/default.page) for my polytechnic internship under the SOI Re-platform team -- Started working with [XCLR8](https://www.linkedin.com/company/rebeehealth/posts/?feedView=all) for my Final Year Project, migrating the backend from Java to Kotlin Spring Boot and their database from MongoDB to PostgreSQL -- Became valedictorian of my cohort! Graduating with a 4.0 out of 4.0 GPA but felt like I wanted to find my tribe both online and in person +- Worked across teams to get 90% UAT completion (across over 90 teams) and did a bunch of root cause analysis +- Attached to [XCLR8](https://www.linkedin.com/company/rebeehealth/posts/?feedView=all) for my Final Year Project +- Migrated the backend from Java to Kotlin Spring Boot and the database from MongoDB to PostgreSQL +- Became valedictorian of my cohort! Graduating with a 4.0 out of 4.0 GPA +- Still felt like I wanted to find my tribe in person +- Was rejected from the [PSC Scholarship](https://www.psc.gov.sg/scholarships) (Failure #6) - Got accepted into [NUS Computer Science](https://www.comp.nus.edu.sg/programmes/ug/cs/) -- Started a research internship with [DSO National Laboratories](https://www.dso.org.sg/), working on unsupervised stance detection +- Started a research internship with [DSO National Laboratories](https://www.dso.org.sg/) +- Integrated social media information for unsupervised stance detection and was exposed to NLP research! - Enlisted in the [Singapore military](https://sso.agc.gov.sg/Act/EA1970) ## National Service: 2020 - 2022 @@ -85,22 +94,29 @@ To mark ten years in tech, I thought it would be fun to document my journey into - Started writing about [Elixir on my blog](https://blog.woojiahao.com/post/odd-hound/) - Invited to write for company blogs - Got articles featured on Elixir newsletters -- Studied [Calculus](https://www.pearson.com/en-us/subject-catalog/p/thomas-calculus/P200000007103/9780137616077) in my free time to prepare for university +- Studied [calculus](https://www.pearson.com/en-us/subject-catalog/p/thomas-calculus/P200000007103/9780137616077) in my free time to prepare for university +- Applied to US universities like MIT and Stanford for Computer Science +- Got rejected by every US university (Failure #7) +- Built [`chris`](https://github.com/woojiahao/chris), a [Pratt parser](https://matklad.github.io/2020/04/13/simple-but-powerful-pratt-parsing.html) written in Go +- `chris` was featured on the [Golang Weekly newsletter](https://golangweekly.com/) ## University: 2022 - Now - Enrolled in the National University of Singapore's School of Computing, studying Computer Science -- Joined [Residential College 4](https://rc4.nus.edu.sg/) and met many close friends there +- Joined [Residential College 4](https://rc4.nus.edu.sg/) +- Met many close friends in RC4 - Joined [NUS Google Developer Student Club](https://dscnustech.github.io/) as a backend software engineer on Project Sight Word -- Met amazing friends from GDSC -- Realized I was not cut out as an academic weapon after struggling in my first semester -- Realized that getting a job in tech was a lot harder after flunking a bunch of technical interviews +- Met more amazing friends from GDSC +- Realized I was not cut out to be an academic weapon after struggling in my first semester (Failure #8) +- Realized that getting a job in tech was very hard after flunking a bunch of technical interviews (Failure #9) - Discovered the existence of Leetcode - Joined [NUS Hackers](https://nushackers.org) and finally discovered my tribe IRL -- Articles were noticed by [Ethan](https://www.linkedin.com/in/sherbondy/) and was offered to do an internship at [Betafi](https://www.betafi.co/) using Elixir + Phoenix! +- Articles were noticed by [Ethan](https://www.linkedin.com/in/sherbondy/) +- Ethan offered for me to do an internship at [Betafi](https://www.betafi.co/) using Elixir + Phoenix! +- Joined Betafi as a software engineer intern and worked on improving the video processing pipeline and adding project templates - Started the [Technical Interview Study Guide](https://interviews.woojiahao.com) to compile my notes from interview preparations -- Taught a Git and introduction to databases workshop for [Orbital](https://nusmods.com/courses/CP2106/independent-software-development-project-orbital) -- Got top student for [CS2103/T (Software Engineering)](https://nusmods.com/courses/CS2103/software-engineering) +- Taught a workshop on Git and another on databases for [Orbital](https://nusmods.com/courses/CP2106/independent-software-development-project-orbital) +- Became the top student for [CS2103/T (Software Engineering)](https://nusmods.com/courses/CS2103/software-engineering) - Returned to CS2103/T as a teaching assistant (and got 4.8/5.0 for teaching feedback!) - Taught a [web development with Elixir workshop for Hackerschool](https://www.youtube.com/watch?v=-VHBMXxCee0) @@ -110,9 +126,18 @@ To mark ten years in tech, I thought it would be fun to document my journey into - Taught another workshop on Git for Hackerschool - Got internship offers from Google, Citadel, Palantir, and PayPal! -- Taught another iteration of Git for Orbital -- Joined Citadel as a Site Reliability Engineer intern over the summer on the Central SRE team -- Flew off to London immediately after to join Palantir as a Software Engineer intern on the Developer Console team +- Organized Hack&Roll 2024, supporting the web app used by over 800 live participants and 40 organizers +- Realized on-call isn't fun and that the web app had to be rewritten to be more intuitive (Failure #10) +- Taught yet another workshop on Git for Orbital (again) +- Joined Citadel as a site reliability engineer intern over the summer on the Central SRE team +- Met an amazing team and mentor, Nelson +- Worked on preparing the Commodities Observability Platform for a disaster recovery exercise and implementing an automated incident post-mortem tool +- Flew off to London immediately after to join Palantir as a software engineer intern on the Developer Console team +- Met awesome people both within the Dev Console team (shoutout to Zeyad, Amish, Nadira, Xinyi, and Tim!) and outside of the team, creating amazing memories in London +- Integrated Platform API support into Ontology SDK clients and made many memes +- Working intensely towards getting the rewritten web app out (and I did!) - Returning to school! -Wow! That took a while to recap! It has been such a wonderful journey and I am so happy that 15 year old me decided to get into tech. I got to meet so many amazing people and work on so many interesting problems. I can't wait to see what the next 10 years has in store for me! 🎉 +Wow! That took a while to recap! It has been such a wonderful journey and I am so happy that 15 year old me decided to get into tech. I got to meet so many amazing people and work on so many interesting problems. + +Although I have had many successes as well, I have faced many failures as well (10 in total!) and these failures have taught me so much. The past ten years has been so fun and I can't wait to see what the next 10 years has in store for me! 🎉