
Software Engineer
What Still Matters
Lessons from more than ten years of building software in Vietnam, before AI and since
Dương Nhật Tân
For software engineers, and those about to become one
A5 PDF, 182 pages. EPUB for phones and e-readers.
Each reader gets their own code to open the book. If you don't have one yet, message the author on LinkedIn.
Foreword
“It's written in a very honest voice: real stories, told by the person who lived them.”
Before you start
A carp rarely becomes a dragon.
In Vietnam, people call the final high-school exam vượt vũ môn, after the old image of a carp that clears the Dragon Gate and turns into a dragon. For many families, it carries the hope that a child will do well at school, find a good profession and live better than the parents did. Behind the exam are years of the whole family pulling together. Parents make sure the child can study as far as they're able, and the child studies in the belief that those years will open the way to a better life.
But that isn't the hardest test. A bad result can be mended: sit the exam again, choose another school, or take another route. The bigger test may come later, with the first paid job. By then, a young person has to turn what they've learned into work someone is willing to pay for. The degree is in hand, but the distance from finishing school to being able to do the job can still be long.
At school, there's a curriculum, an exam and a score that tells you whether you've met the bar. Looking for work, it's hard to know how much you're still missing. Applications go unanswered, interviews end in rejection, and some people take course after course without knowing whether it's enough yet to be hired. To get experience you need a job, and the jobs want people who already have experience.
I often come across questions like: how do you get a job with no experience, and how do you learn fast enough to start working without spending much? Some people know a trade takes years to learn, but it's already time to earn a living. Their family has supported them for a long stretch and has its own bills to pay. Every month without work is another month leaning on home. Whether to keep studying becomes a sum of the money left and how long the family can still wait.
Even with a job, people can still be stuck. The daily work gets done and the salary comes in, but a few years on they can't see how much they've grown. Moving needs the experience the new place asks for; staying means the same work over and over. Some start to wonder what their working years have actually given them. Meanwhile their responsibilities to their family grow, and starting over costs more than it used to.
Worry about AI makes the future harder still to picture. Students wonder whether what they're learning will still earn them a living when they graduate. People with years in the trade wonder how much their experience will still be worth. Someone may be willing to keep learning and still not know what to spend the next few years on, when the work they're aiming for is changing too.
Questions like these take time to answer. The rent, the food and what the family needs still come due.
I don't have many answers. What I can do is tell my own stories, the times I struggled with some of these same things, and hope you find something useful in them.
The familiar answer is to do good work: put in the time and the effort, work harder. That answer is right, and the whole book stands on it, but it's only half. In twelve years in software, I've worked with a lot of people who did good work. Some were seen for it and handed bigger work. Others were just as good and stood still year after year. The book is about the other half.
Contents
Part One
Does good work speak for itself?
Why the same good work pays in one place and not in another
- 1People follow what paysWhy does doing better earn nothing in so many places?
- 2School is a different gameWhy do top students still stumble in their first job?
- 3Room to use your skillsYears in the job, and still treated as junior?
- 4Everyone has a degreeEveryone has a degree. What gets you hired?
- 5Does hoarding what you know pay?Does keeping what you know to yourself make you safe?
- 6The fish rots from the headWho decides whether good work gets noticed?
Part Two
Good places draw good people
Choosing what to study, where to work and who to work for
- 7Your trade, your callingWho is really choosing your major and your first job?
- 8You grow into the team you run withWhat will your first team turn you into?
- 9Good wood beats good paintNo passion yet: how do you choose?
- 10Groping in the darkWhat if nobody you know does the work you want?
- 11Skeletons in the cupboard?How do you read a team before you join?
- 12People leave managers, not companiesHow do you tell if a manager is worth working for?
- 13Don't just make the teaAn internship of errands, or no pay at all?
Part Three
Getting good
Getting better through real work, and what's still yours to answer for with AI
- 14Learning to swim on dry landDrilling for interviews and still failing them?
- 15Don't learn by roteThe tutorial made sense. Why can't you do it yourself?
- 16Learn from your peersNo mentor: who teaches you?
- 17Everyone inherits old codeAfraid to touch old code because everything breaks?
- 18Tests remember what you'll forgetHow do you know your change didn't break anything?
- 19Look hardest at what's hardest to changeWhich decisions have to be right the first time?
- 20What ownership meansA problem everyone sees and nobody fixes?
- 21Model answers in the age of AIHow do you use AI and still get better?
- 22AI can't go to prison yetWill AI take software engineers' jobs?
Part Four
Speaking up
Asking, reporting, proposing, showing your results, asking for the next step, and disagreeing so that people listen
- 23Silence isn't always goldenSee something wrong, but afraid to say it?
- 24Out of sight, out of mindWorking hard, but people think you're not?
- 25Everything has a priceHow do you ask, and answer, so it actually helps?
- 26Say just enoughHow do you write so a busy person can act on it?
- 27Write the proposalA good idea, and nobody listens?
- 28Good work doesn't always speak for itselfGood work, and nobody knows?
- 29Pushing backYou think your boss is wrong. What do you say?
- 30The squeaky wheel gets the greaseYou want the promotion, but don't know how to ask?
Part Five
Changing things, or moving on
Changing your team, starting your own company, or leaving
- 31Does anyone up top listen?Can one engineer change how a whole team works?
- 32You become the company you keepA workplace of politics, and you're starting to play along?
- 33Should you leave?Fed up with your job: stay or go?
- 34All good things come to an endYour good team gets new leaders. Now what?
- 35Looking for workOut of work or between jobs: what now?
- 36Out in the wide worldWorking for a team abroad without leaving Vietnam?
- 37Pick your gameHow do you choose where to work by who you want to become?