
Sebastian Belulok
Sigmaschool graduate
From mechanical engineering dropout to senior software engineer
Before
Student
Now
Senior Software Engineer
@ PIXLR Online Photo Editor
The kid who kept formatting the computer
Sebastian Belulok was born and raised in Miri, Sarawak, and his obsession with computers started in form one, when a friend taught him how to format a PC. It became a habit that bordered on compulsive. Every time his dad brought home a new desktop or laptop, Sebastian would wipe it and reinstall Windows, just because he could.
What he loved was the tinkering underneath. Formatting a machine meant partitioning drives, playing around in the BIOS, and setting up dual or even triple boots, so one computer could run Windows 2000, XP and Vista side by side. Nobody assigned him any of this. He simply liked knowing how the machine actually worked.
By high school the ambition had a shape. At one point he imagined starting his own mobile phone company and building smartphones. Before university, he told his parents plainly that he wanted to be a computer engineer, hardware or software, either one, as long as it stayed within the computer realm.
The course he didn't choose
The dream ran into geography and money. His parents didn't want their youngest son going too far from home, and the nearest university to Miri offered only engineering and business courses. He wanted to study in West Malaysia, maybe even overseas, but the finances weren't there to send him further. So he enrolled in mechanical engineering.
His first brush with programming came at 18, during his foundation studies, in C and C++. It left him cold. At the time, he says, he had no interest in programming at all. Code was just another subject to pass, not the thing he had been chasing since form one.
Later, when he shifted into software engineering coursework, he watched first-hand how brutally the field filters people. His intake started at around 120 students. After the first week it was down to 100, by the middle of the semester it had been slashed to 60 as the programming content got deeper, and by the end of semester one only 50 remained. Of those, maybe 80 percent eventually graduated.
He doesn't think the ones who left wasted their time, because even an unfinished computer science education teaches you how to tackle problems in a structured way. But it shaped his honest view of the industry: anyone is welcome to try tech, and at the same time it's not for everyone. You need a certain way of thinking, and you need to actually like it.
“Don't give up, keep on grinding, and you will receive the fruits of your labour. Most of the time we don't see success stories because people stop halfway and do something else.”
The year everything fell apart
In his third year of mechanical engineering, Sebastian dropped out. He is blunt about how bad 2019 was. He had disappointed his parents, who had high hopes for their youngest child, and when he looked into continuing elsewhere, other universities questioned whether he could really finish an engineering programme if he tried again. He heard that a lot, and it was devastating.
While he figured out what came next, he worked as a part-time tennis coach. Around the same time he heard about a local bootcamp claiming it could make you a full-stack developer in three months. He found the idea intriguing and tempting, but he didn't join. Not yet.
Two things eventually pulled him into software. The first was redemption: friends kept pushing him, telling him he could still make it, and he wanted to prove them right. The second, he admits frankly, was money. Browsing JobStreet, LinkedIn and Glassdoor, he saw software developer salaries around RM8,000, with Java roles going for 12 to 15. "I was like, wow. Why don't I just learn this through YouTube and give it a shot?"
An internship in the middle of Covid
When Covid struck in 2020, Sebastian applied for any internship he could find. His logic was simple: he was still technically registered under his university, so he would use the window, do his best, and hope somebody liked him enough to convert him to full time. A Singaporean company had just opened a branch in Miri, and because the branch was new, the requirements weren't strict. They gave him a chance, doing WordPress.
There was a catch. Most internships at the time ran three months, but because he hadn't completed his studies, his was stretched to six. The plan still worked exactly as he'd hoped: the company converted him, and over the next three years he climbed from intern to junior WordPress developer to senior.
The first month, though, nearly broke him. He knew things like APIs at surface level, but the tasks he was handed demanded detail he didn't have. "It's the kind of pressure when you wake up every morning, you feel it, and you're like, oh man, I have to go to work today," he says. People dismiss WordPress as no-code, but a website is a website: things break, anything can happen, and someone has to fix it with PHP and JavaScript.
Paying for mentorship by the hour
Sebastian describes his path as unfortunate in one specific way: he had no mentor. In his community back home, everyone was a traditional engineer, a doctor, a lawyer or a teacher. He didn't know a single person in tech he could refer to. Reddit and Stack Overflow existed, but he didn't even know they were there, and the local developer community group that had just been established in 2019 was still small.
So he bought his way to knowledge. He taught himself JavaScript and then PHP on YouTube. He bought online courses at RM300 apiece that guaranteed he would at least finish a project. And through an online tutoring platform, he paid people around RM200 a month for two hours of their time, not to teach him syntax, but to walk him through what he calls the grey areas of programming, the things nobody writes down and you normally only learn from experience or a mentor.
"Knowledge is power. The more you know, the less scared you are doing the task," he says. Bit by bit, the morning dread faded and the confidence came. It's also why his signature line about the industry comes with a disclaimer attached. "Anyone who comes through this field, you have to fake it till you make it," he says, but faking it never meant knowing nothing. It meant having surface knowledge and racing to make it real before anyone noticed the gap.
Teaching kids, then a leap to Kuala Lumpur
After three years of WordPress he switched to something completely different: teaching kids to code. Primary school students learned the fundamentals through block-based coding in a fun, interactive way, and when they reached high school they migrated to text-based coding in Python or JavaScript, mostly through game development.
The game focus was deliberate. Teach children serious material, like data science, and they get bored within a few sessions. A game is something a child can actually play after building a mechanism; a web page just sits there once it's done. He stayed about a year.
Then, in 2022, with the pandemic receding, he found a job in Kuala Lumpur and moved across the South China Sea. The role was full-stack developer at a financial firm, and by his own account he came in with no real professional experience in front-end or back-end work beyond WordPress and teaching. Shortly after starting, he enrolled at Sigmaschool, studying alongside the new job. The juggling was rough, and when work piled up after hours he sometimes had to miss sessions. It wasn't easy, he says, but he managed.
The painful three months
A few months into the financial firm job, the senior developer left. His manager asked whether he wanted the vacant seat instead of the firm hiring someone new. Sebastian said yes, passed the assessment they set him, and on his first day as a senior was handed a project to lead, with two interns under him.
The project was the firm's entire back office: withdrawals, transactions, campaigns, financial reports, the machinery a financial company runs on. He knew none of it. That's when he crystallised a rule he still repeats: in a tech company you need two things, the business logic of that company and the technical knowledge, and if you lack either one, you're in trouble. You can learn to build a to-do list on YouTube, but nobody teaches you how a withdrawal flow works.
The business side he solved by asking. He went to the operations team and the digital marketing team and asked them to spare 30 minutes a day to slowly explain what he needed to learn about the domain. They did, and he remains grateful. The technical side was harder: the stack was PHP with Laravel on the back end and React on the front, and he wasn't strong in either.
So he ground it out. Work ran 9 to 6, and from 6 until midnight or 1am he did exercises and worked through resources, because to his mind the only way to get good at programming is to practice and keep learning, and with no senior to ask, that was the only solution he had. Two months of struggling through the business logic, then the architecture planning, GitHub, server-side development, the front end. In the end he built the back office alone, the system the firm used to operate and track its financial reporting. "That was a very painful three months, but it was a very satisfying three months for me as well."
Learning when to ask
The experience exposed the cost of his own fake-it strategy. Once you've projected expertise, asking basic questions feels like contradicting yourself, so you don't ask, and your progress quietly stalls. It was a hard lesson. "Regardless of how good you are, how long you've been doing programming, asking is always essential. It could save you one week of exploring yourself. If you ask, you could have known in five minutes."
His system now is concrete. Before any task, check three things: the requirements of the project, the business logic, and the technical knowledge. If you're missing any of them, especially the first two, you have to ask, because if you don't know what's needed from the task, you can't do it.
But research comes first. Give yourself a window, say three hours, try every method you know, and then go to your senior with what you attempted. Seniors are happy with that, he says, because they can see the effort: you show your research, then you ask. That lands very differently from giving up after two minutes.
Five rounds for a famous client
In February of the following year, while he was still deep in the financial firm's back office, a large multinational consultancy headhunted him. The vetting was serious: five interview rounds, two of them technical, because the client he would be serving was one of the most famous search engines in the world, and the consultancy had to be sure its people could hold their own.
The first technical round was with the man who would become his manager, who ground him on JavaScript logic: how APIs behave, cross-origin issues, higher-order functions. The interview ran 30 to 45 minutes online. He couldn't answer everything, but reckons he handled 70 to 80 percent of the questions, and still walked away convinced he had failed.
The next day they called. He had passed, but there was another round the following week, and he had better know React. He had one week. He drilled JSX, state, routers, Redux, and when the day came, what he had studied was largely what they asked. There was no live coding, which he counts as a mercy; had there been, he says, he might just have walked out. He got the job, spent almost a year there, and today is a senior software engineer at Pixlr, the online photo editor.
The interviews he failed
Ask Sebastian about interviews and he talks mostly about the ones that went wrong. In one, the interviewer asked about data structures and Sebastian, trying to impress, explained object-oriented programming instead. "He said straight up to my face, I think you're not the right fit for this position. Thanks for applying." It stung, but he notes the directness was almost a kindness. Rejection usually arrives slower and vaguer.
Another was for a remote lead role at an Australian company. The interviewer listed the requirements, cloud computing, DevOps, a headless WordPress setup, and gave him a test where he didn't recognise a single thing. So he said so. He told the interviewer honestly that he didn't know this material, that the position was probably better suited to someone else, and that he didn't want to waste his time. The reply floored him. "He said, that's the kind of person we want. I was so shocked. I thought when I said I don't know, he would straight up reject me."
He still didn't get the job, but the interviewer told him exactly why, and the feedback rewired how he presents himself. The problem wasn't the honesty; it was the surrender. Instead of saying he couldn't do it, he should have said he didn't know it yet but was willing to learn, if they were open to exploring that together. "I learned more in my failed interviews than the ones that I passed. When you pass, you just get a job. You don't know what you did right or what you did wrong."
An industry that never sits still
Staying current is the struggle he's most open about. He learned React at version 16; by version 19, with major releases of the surrounding tools landing too, things he knew had been reworked or replaced, and he had to relearn them. His fix is small and daily. He follows a programming account on Instagram, and when he's bored, instead of scrolling videos he scrolls posts on best practices and concepts. It can be tiring, he admits, but everyone in tech is struggling with continuous learning together.
At work, the challenge has shifted from learning enough to staying useful. Repeat a task often enough and you plateau, so he looks for what's lacking in the company and treats that gap as his opportunity. Right now that means AI: learning LLMs, integrating AI APIs, migrating on-premise servers to the cloud. One example he likes to give: a digital agency doing cold calls and cold emails could hand that recurring work to AI, saving manpower and cost. His honest challenge is the same as everyone's, which is figuring out how to get there.
He also thinks newcomers today have it easier than he did, and he means that as encouragement. In 2019 he had no mentor and no community; now there are meetups, events, and AI assistants that will answer the stupid questions you'd hesitate to ask a colleague, without the bad looks. The flip side is that the bar has risen. In 2018 or 2019, knowing some programming was enough to get hired as a full-stack developer. Now job descriptions want DevOps, some data science, and gen AI on top, and he expects the criteria to keep climbing. That, he says, is exactly why you start now rather than later.
A longhouse and a lecture hall
His career map is drawn decades out. Within three years he wants a crack at a big-tech company, ideally in Singapore, drawn partly by the pay and perks he glimpsed while serving one as a vendor, and partly by the engineering itself: companies that build frameworks work in languages like C++ and Java, which don't churn the way front-end tools do. In his 40s he wants to move into tech consulting, and in his 50s or 60s, teaching. Not the syllabus-only kind of lecturer he found boring as a student, but the kind who walks in with decades of industry stories that make people care about the subject.
He has already started on that last part. He now teaches a three-month full-stack bootcamp as an external trainer, handpicking topics for career switchers coming from other industries, and he mentors informally too. Friends who came to him curious about tech have landed jobs through his help and recommendations, which makes him proud. "What I didn't have back then, I'm able to give right now."
There's a personal dream as well, and it has nothing to do with code. Sebastian comes from one of Sarawak's indigenous tribes, and he wants to build awareness of its culture: a website and gallery, maybe merchandise, and within ten years a concept restaurant in the city that recreates the feeling of a longhouse, with wood and greenery and waterfalls, so people can taste and experience where he comes from.
His closing advice is the whole story compressed. Don't give up, keep grinding, and you will receive the fruits of your labour, because most success stories die when people stop halfway and do something else. And if you're going to do it at all: go big or go home.
Could this be you?
Sebastianstarted with no coding background. Try the same programme free, or see exactly what you’d learn.
More stories
View all
Dickson Goh
Business Analyst @ Stampede Solution
He did the bootcamp, tried a dev internship, then found the role that fit
Read story
Nixon Siow
Software Engineer @ Property213
He thought about it for a year, then quit his four-year job to learn to code
Read story
Adrian Lin
SEA Career Development Specialist @ Boston Consulting Group (BCG)
Tax, headhunting, then a career break that turned into code
Read storyYour turn
Their before looked a lot like your now.
Every one of these people started with zero. The difference is they started. See the programme they took, or talk to us about whether it fits you.