Category: Society & Education

  • ERP X shows how an agile Government should operate

    ERP X shows how an agile Government should operate

    I dropped by the OGP office to meet fellow ERP X beta testers. had hoped this would be the path we took instead of the current ERP 2.0.

    My sense is that ERP 2.0 is already too deeply entrenched to change course. But that is also why ERP X is a real lesson in how government should operate in a Singapore that is supposed to be agile, fast-paced, and tech-savvy.

    For people in tech, this all sounds very familiar: start small, test in the real world, learn quickly, and adjust based on what you actually find. Don’t spend years locking into a system, only to discover too late what people love or hate about it.

    And it is not just about the tax money spent. It is also about the time, energy, and public sector capacity that a poorly thought out half-billion dollar project consumes.

    One thing I’d like to see more of is the Government running public beta programmes like this, especially for digital services and technology. There’s simply no substitute for real-world feedback from the people who will actually use the product.

    I’m also encouraged to see that there are teams within Government building products with genuine pride, conviction, and a strong sense of responsibility towards taxpayer’s money.

    I also shared that the traditional Government approach of awarding large, monolithic software tenders is becoming increasingly unsuited to today’s pace of technology.

    Agile, experimental, user-centred ways of working should be the default, especially for projects that affect the whole country. This includes also how Government contracts vendors. If ERP X leaves behind anything, I hope it is this lesson.

  • We don’t need more Product Managers, we need more Pride.

    We don’t need more Product Managers, we need more Pride.

    Who still remembers this lion head? If you grew up in the 90s or early 2000s, you probably do. It was often found on products “Made in Singapore”. As a small nation with limited resources, we took pride in proving we could compete with the best.

    Every time I return home through Changi Airport, I’m reminded of what Singapore is capable of. I can disembark, clear immigration, collect my luggage and be on my way in about 15 minutes. It feels ordinary because I got used to it, but extraordinary by global standards.

    That didn’t happen because we had the best procurement process or the most comprehensive governance framework. It happened because we believed Singapore could build something better than everyone expected.

    As organisations grew, so did the layers of process. Every failure led to another approval, another committee, another taskforce, another procurement rule, another governance framework. We became better at managing risk than creating excellence.

    I see this creeping in our digital services.

    I find the NUHS app noticeably simpler and more intuitive than HealthHub, even though HealthHub is meant to be the national platform. Parents Gateway often sends notifications that could just as easily have been an email. There’s a separate forms service for MOE when FormsSG could have been integrated. MOE Student Learning Space (SLS) is still not an app, with various seemingly valid reasons. These aren’t major failures, but they make me wonder what question we’re optimising for.

    Are we asking, “what’s the best experience for citizens?”, or are we just checking boxes?

    The Auditor-General’s recent report points to the same concern. Software flaws, gaps in enforcement and weaknesses in IT controls surfaced across multiple agencies.

    These aren’t just isolated mistakes. They’re symptoms of large, complex organisations where process has slowly become more important than purpose.

    Yesterday’s news that GovTech is restructuring and letting go of 93 officers has sparked plenty of discussion. The agency says this isn’t about AI, but about becoming more product-led and taking greater ownership of the systems it builds instead of relying heavily on vendors. I think it’s moving in the right direction. Product ownership creates accountability, and building capability inside government is important.

    But restructuring alone won’t build world-class systems. Culture will.

    Singapore’s greatest achievements weren’t built because someone wanted to hit a KPI. They were built because people wanted the world to look at Singapore and wonder “how did they do that?”

    We don’t need more Product Managers.

    We need more Pride Managers.

  • Singapore’s TFR – is the Education System really the issue?

    This video is extremely on point. I am heartened to hear that the Minister is well aware of all the issues.

    It is important to distinguish between why people don’t want to have kids, versus why they don’t want to have MORE kids. I think the reasons we hear from parents about the education system is one of the key reasons why many stop at 1 or 2. Of course, housing size, general affordability, and access to private vehicle will also affect these decisions.

    People not wanting to have a child altogether is — as minister points out — often a lifestyle choice. Why give up a nice (and tidy) house just for two, a car (not a minivan), annual travels instead of tuition fees, being able to easily immigrate for job growth? These all are likely reasons some avoid having children entirely.

    I personally didn’t think that much, I just “went with the flow”. But I have to be very frank that if it wasn’t for my wife — and now my children — I would probably have left the country for career opportunities when younger. 

    That said, the points on the education system really hits home. Perhaps one thing many do not know is that the PSLE is a one-of-a-kind system in the world. No other country puts children at age 11-12 through a nationwide high stakes exam. Malaysia had something similar and also did away with it some years ago. In most parts of the world, students automatically progress to middle or secondary school without an exam. Typically, entrance exams only apply if you wanted to get into a prestigious or private school.

    PSLE was devised in early post independence Singapore because we didn’t have the capacity for every citizen to have secondary education, and also because the education standard of the nation was low, PSLE was necessary as a blunt filter.

    But today, after all the tweaks and adjustments to the system over decades, the system is probably due for overhaul. The idea that we should do away with it, or push it further, is starting to make more sense. Perhaps regular, smaller exams should be used more as a diagnostic exam, rather than a singular high-stakes selection/placement exam like PSLE. The subject-based banding subtly happens (as it does now at primary 4) at every stage — perhaps every year or two — all the way to JC.

    The video also mentions a few important points about the post-AI world, just like the post-Internet world where I grew up in: is rote memorisation and certain knowledge skills still desirable or practical? How do we teach our next generation about creativity, cross-domain synthesis, learning to learn, judgment, morals — all the “human” things that we shouldn’t be outsourcing to AI?

    Further reading: History of the Singapore Primary School Leaving Examination

  • AI is replacing us because we’re getting lazier

    There are articles all over the Internet suggesting that AI will likely overtake humans because of its superior intelligence. But as an Adjunct Lecturer teaching the next generation of our workforce, I see a very different, more troubling picture. In fact, I’m very, very concerned.

    AI is not replacing people because it’s too smart – it is replacing them because too many (young) people are getting (very) lazy.

    Struggles Cultivate Deep Thinking

    We’ve entered an era where students and professionals alike can summon AI to write essays, generate code, answer technical questions, and even prepare reports with minimal input. I’m not even gonna lie about myself using ChatGPT to assist in writing this article – these tools are undeniably useful.

    But instead of being used to deepen understanding or accelerate learning, AI tools are too often being used to bypass the thinking process altogether.

    In my classes, I’ve noticed a sharp decline in students’ ability to reason through a problem. When presented with a coding exercise or a systems design question, many instinctively turn to ChatGPT or similar tools not as a partner, but as a crutch. They copy, paste, submit, and move on.

    The troubling part isn’t the use of AI. I advocate for responsible use of tools. The problem is the mindset shift. Students no longer struggle with problems; they are outsourcing the struggle. And in doing so, they’re missing the critical phase where actual learning occurs.

    A Systemic Problem

    This habit of mental offloading isn’t just a student issue. It’s a consequence of how we design our assessments, our learning environments, and our expectations.

    Many computer science courses today rely heavily on coursework and take-home assignments, which were great in the past – but today are easily completed with AI assistance. If we’re assessing output without scrutinising the process, we’re inviting this behaviour. We’re telling students: “We care that it’s done, not how you did it.”

    So naturally, they’ll take the fastest (aheem, laziest) route!

    Rethinking Assessment in the Age of AI

    We need to rethink how we teach and assess in AI-enabled classrooms. Here are a few ideas that I believe must become mainstream, especially in coding and technical disciplines:

    1 – Reverting to Closed-Book Assessments

    We need to bring back exam-style assessments. Closed-book exams and practical coding tests can help differentiate between those who’ve genuinely understood material and those who’ve coasted on generated output.

    2 – Live Presentations and Walkthroughs

    More emphasis should be placed on students explaining their thought process aloud – through live code reviews, technical walkthroughs, or project demos. If they can’t articulate why they chose a certain algorithm or how they structured your app, they probably didn’t understand it.

    3 – Practice Testing and Distributed Practice

    Rather than one or two big assignments, we need more frequent, lower-stakes practice tests spread out over time. This supports long-term retention and builds foundational understanding. Students should be repeatedly exposed to problems in slightly varied forms to encourage generalisation of concepts.

    However, it is also important to bear in mind that this also places more workload on teachers.

    4 – Focus on Problem Formulation

    We should assess the ability to ask good questions, define the problem clearly, and justify trade-offs. These are skills AI tools are unable to do without human assistance, and are also skills that remain essential in professional engineering environments.

    Laziness is Human Nature

    AI encourages the human tendency to avoid the hard work of thinking. If we’re not careful, we’re going to raise a generation of engineers who can prompt tools but can’t think critically, debug effectively, or innovate independently.

    The most valuable engineers, designers, and analysts in the future will not be those who blindly use AI, but those who know when to trust it, when to doubt it, and how to surpass it.

  • Rethinking Technical Interviews: Lessons from My Experience

    Rethinking Technical Interviews: Lessons from My Experience

    Earlier this year, after being laid off, I went through several interviews for technical roles. These interviews often involved take-home tests, coding assignments, and live coding sessions. While I completed a few, I eventually started declining most of them, finding many to be time-consuming and, frankly, ineffective.

    The Limits of Coding Tests

    Coding tests can serve as a basic filter for entry-level positions, but their value diminishes when applied to senior-level roles. If you’re hiring a Senior Engineer with 10–20 years of experience, coding proficiency isn’t the primary skill to assess—especially in a world where AI tools like ChatGPT can handle many coding tasks faster and more efficiently.

    Instead, the focus should shift to evaluating Problem-Solving, Critical Thinking, Learning Aptitude, and Communication Skills—competencies that I find many interviews overlook. These are the skills that enable senior engineers to lead, adapt, and contribute meaningfully to a team.

    The Core Skills: Problem Solving, Critical Thinking, Learning, and Communication

    These skills apply to candidates across all experience levels. Over the years, I’ve hired many mid-career switchers, often with limited coding backgrounds. People ask how I gauge their suitability, and my approach is simple:

    • Assess their problem-solving ability.
    • Understand their interests and what excites them.
    • Observe the quality of their questions and how well they articulate their thoughts.

    While I do conduct technical screenings to ensure foundational competency, I avoid assigning time-wasting take-home tasks or algorithmic puzzles that don’t reflect real-world job demands.

    Navigating the Era of AI-Assisted Interviews

    The rise of AI tools this year has also transformed interviews. Candidates can now use AI dicatation off-screen to assist with technical questions, making traditional coding tests even less reliable indicators of ability.

    To counter this, I focus on questions AI can’t answer effectively:

    • What are your hobbies?
    • What are you learning now, and why?
    • If you could explore something new tomorrow, what would it be?
    • What’s the most challenging or interesting project you’ve worked on?
    • How would you approach solving this real-world problem based on a scenario?

    These questions help reveal a candidate’s genuine interests, adaptability, and approach to problem-solving.

    The Rapid Pace of Technology

    Over my 20-year career, technology has evolved very quickly. I’ve worked with Turbo Pascal, PERL, Java, PHP, C, C#/.NET, Swift, Python, JavaScript, and countless frameworks, libraries, tools and operating systems. Every shift required adaptability and a willingness to learn.

    A person who can learn and adapt will thrive as technologies, tools, and frameworks continue to change.

    Final Thoughts

    Hiring the right people isn’t about filtering for a specific tech stack or testing for algorithmic skills your team may never need. It’s about finding individuals who can solve problems, adapt quickly, and communicate effectively. Those are the qualities that matter—and they’re what will drive your team forward.

  • How AI will transform Learning and Hiring in Software Development

    How AI will transform Learning and Hiring in Software Development

    The era of Google

    I remember my time as a student back in 1999: a new search engine, Google, was starting to edge out AltaVista and Yahoo — both of which dominated the Internet search landscape throughout the 90s. It was an exciting time for Computer Engineering, as open-source software like Linux was gaining traction in Enterprises. Microsoft and the Java ecosystem were also equipping us with powerful IDEs like Visual Studio, JBuilder, and IntelliJ with features like code completion. Yet, despite these advancements, we still relied heavily on books as primary sources of information. Exams were still handwritten, even for coding: we memorised library functions and syntax, despite having access to the Internet and some fairly advanced tools.

    Our schools insisted on handwritten code and taught us programming using Notepad instead of IDEs. At the time, student laptops were underpowered, and IDEs were huge memory and CPU hogs, running painfully slow. Despite the inconvenience, students like me made every endeavour to set them up, knowing the efficiencies they offered.

    Today, this all sounds ridiculous. With modern IDEs, who would memorise hundreds of function calls or API structures? I actively work across multiple programming languages and frameworks and use countless DevOps tools and certainly can not memorise everything; perhaps it’s age, but it’s nearly impossible to keep all these details in my head.

    The rise of AI

    Twenty-five years on, the world is vastly different, but education systems still lag in adapting to technological shifts. Educators remain cautious about how AI impacts academic integrity and the assessment of written or coding assignments. While AI use isn’t necessarily discouraged, it’s also not fully encouraged; students are however already using AI, much as we once turned to Google and IDEs in place of traditional textbooks.

    For Software Development, AI coding assistants are here to stay, yet they’re unlikely to replace Software Developers soon — especially those who leverage AI-enabled tools. There are stories of startups built by non-technical founders using AI-generated code, but the actual efficacy of purely AI-driven development remains unproven. 

    So, what should we teach students, and how should we evaluate professionals?

    Educational institutions and hiring managers must rethink how they assess skills in this new landscape.

    Developing Strong Fundamentals

    AI models today, especially large language models (LLMs), are not infallible. They can produce erroneous or nonsensical responses. Strong foundational knowledge enables students and professionals to evaluate AI outputs critically and refine prompts to achieve the desired results. From my experience with students using AI-generated code, those lacking fundamentals struggle to interpret the code correctly and often can’t integrate it with existing codebases. For instance, AI models can generate verbose scaffolding or unnecessary details that may disrupt the intended functionality. Without solid fundamentals, these additional complexities create confusion instead of clarity.

    Cultivating Critical Thinking

    Critical thinking is crucial for discerning when and how to use AI solutions effectively. Humans bring valuable contextual knowledge to problem-solving — something not easily available to AI. Tackling complex real-world problems often involves navigating nuances such as geographical, cultural, and political factors. As a simple example, a form with “first and last name” fields may not be culturally appropriate in some countries, especially in parts of Asia where such naming conventions are uncommon. While an AI model might “know” this in theory, it often requires a user’s insight and critical thinking to specify it in an AI prompt when generating a form.

    Mastering Communication

    Although AI can generate well-structured text, effective communication remains a uniquely human skill. Communication goes beyond words to include emotional intelligence, empathy, and cultural sensitivity. AI may one day grow up with us and learn every little bit of detail of our lives (it is a scary thought, but absolutely possible future) but it won’t easily replicate the nuances of face-to-face interactions, emotional cues, or the subtleties involved in team dynamics. Communication skills, therefore, remain vital for collaborating with others and expressing complex ideas in ways that are both clear and motivating.

    Conclusion

    As we move forward, Software Developers will still need to synthesize large amounts of information before even engaging AI. We may no longer need to memorise every technical detail or write every bit of code, but we’ll still need a robust foundation to understand, prompt, and critically evaluate AI-generated responses. AI is reshaping learning and hiring, but the fundamentals of understanding, thinking critically, and communicating effectively will remain core competencies in software development for the foreseeable future.

    This article was also posted on Medium.com:
    https://medium.com/@detach8/how-ai-will-transform-learning-and-hiring-in-software-development-642e3d678cc5