Sudo Internship Journey (2)
# Sudo JourneyPreface
In 2017, I published a post on Medium called Sudo Internship Journey — Prologue (it has since been moved to my personal life blog). I had originally thought I’d just slowly write the rest whenever I had free time, but somehow five years passed just like that.
Looking back on my career, I’ve been very fortunate to be where I am today. Being able to revisit my time as an intern at Sudo at this moment in life has given me even more perspective to share.
A year after I finished writing this piece, Denny also published his journey at Sudo on Medium. The part about Sudo evolving from an app, to freelance work, and then into a proper development platform was something I wasn’t involved in. I only heard bits and pieces from Andy, Ben, and Eric, so this was the first time I really saw the full picture of Sudo.
Getting to Know Sudo
As mentioned in the first article, I joined Sudo as an intern because a friend of a friend happened to introduce me. The interview task was to build a front-end calculator with addition, subtraction, multiplication, division, and parentheses precedence. It sounded simple, but the interesting part was that to perform correct calculations on numbers, you had to convert infix expressions into postfix (or prefix) so the program could produce the right result. On top of that, to display everything on the screen, I also had to use common front-end knowledge like event listeners.
The Interview
Back then I only knew how to write CSS and HTML. My JavaScript was limited to basic syntax, and I had some exposure to Ruby on Rails — I had followed a book to build a few websites, but that was about it.
So the assignment was pretty difficult for me. On one hand, I had to implement the algorithm myself; on the other, I had to deal with JavaScript, which I wasn’t familiar with. I even spent a few hours writing code in class, and the code itself was just shoved into a <script> tag without any optimization. In the end, I still got the interview invitation.
Now that I think about it, the interview was kind of funny too. I carried my beat-up laptop (Intel i3, 2GB RAM), wondering if they would ask me to live code something. Even my tote bag was torn, but I was dressed very formally — especially considering it was summer.
When I took the elevator up, I happened to run into Andy. After I greeted him, he smiled, put his arm around my shoulder, and asked, “Aren’t you hot?” I was thinking, holy crap, are founders really that laid-back? Just casually slinging an arm around a stranger they’d just met. I completely forgot the details of the interview itself, but anyway, it went fairly smoothly.
At the time, the interview was held at a place called AppWorks, where many startup teams worked in the same office. Sudo occupied a small corner. Before the interview, they even did a reference check. I remember Winston telling me that when Heart called him, he spent a long time promoting me, and in the end Heart concluded that I was a “rough diamond.” They also mentioned that I was hard to reach, but really that was because I couldn’t afford my phone and internet bills, so my service got cut off 😂.
After that, I got the offer. When I received it, I was thrilled. I never thought someone like me could actually be trusted like that.
The Early Days at the Company
Not long after I joined, we had a team dinner. It was my first time officially interning at a company, so everything felt fresh and exciting. What left a strong impression on me was Denny telling me that jQuery was great and that I should take a closer look at it. I also ate a lot.
On my first day at work, it seemed like the seating arrangement hadn’t been sorted out yet, so I temporarily sat at Denny’s desk while he was taking summer classes. My laptop was too crappy to run Windows properly, so I used Ubuntu instead. That was also my first time getting to know Slack as a workplace communication tool.
During those first few months, I spent all my time on tutplus learning the fundamentals of JavaScript. The courses there were actually pretty good and solid. Back then, frameworks like React and Angular already existed, but it was still a relatively simple era. Being able to learn JavaScript fundamentals well in that environment, I think I was very lucky.
After learning the basics, I did a few side projects and started collaborating with the RD team and PMs to develop new features. That period was when I improved the fastest. I learned a lot about software development and front-end development — how to submit PRs, configure Webpack, build a service from scratch — basically all the things you need to know to get a handle on software development, I learned in those few months.
There was one time I nearly leaked code, because I had committed my SSH private key into a public GitHub repo. Looking back now, wow, I can’t believe I made such a stupid mistake and still didn’t get fired. Thank goodness.
It was also thanks to devcore doing security checks that this issue was caught. Fortunately, there were no login records besides devcore. Since then, whenever I set up an SSH key, I always double-check the folder where it’s stored, and any account containing sensitive information gets protected with 2FA. I really learned how to protect myself from a disaster the hard way.
The office had surprises almost every day. One team at AppWorks that left a deep impression on me was justfont. At the time, I still didn’t understand the software industry very well, but I simply thought it was amazing that they could start a business making fonts. I would occasionally see the founder rushing around. There was also a very talented coffee person at AppWorks — his coffee was really delicious.
After a few months, the company moved out of AppWorks and got a small office on Xinyi Road.
Offsite Training
One memorable time was when the company went to Yilan for a trip. I think it was called offsite training. Everyone rented a villa in Yilan and did some activities while hanging out.
I really liked that atmosphere. It wasn’t that we went out to play every day and didn’t work — it was that we could gather as a group and work toward the same goal. Back then I just thought it was fun, but after working for many years and being in companies of all sizes, I realized how precious that feeling really is. I later noticed I missed out on so many things — like being in the army during the founder’s wedding, or already being in Japan.
At the time, I really hoped to grow alongside the company, and I truly believed I could stay until that day came. I was naive enough to believe the boss when he said that within five years he would make sure everyone there could afford to buy a house. Of course, that grand promise never came true.
Maybe the boss really meant it at the time, or maybe he just wanted to keep employees around. Either way, I don’t think there’s any need to hate or resent someone over that.
The Middle Period
Near the new office there was a really delicious breakfast shop. My favorite order was a cheese steak omelet roll + thick chocolate toast + unsweetened green tea. The steak was cooked really well, and there was so much chocolate spread on the toast that it would literally burst out. Eating that made me feel great — though the calories would skyrocket too.
Going to work became the motivation that got me out of bed every morning. Every day, while taking the MRT from Dingxi to City Hall (after moving offices, it was Xiangshan), I would think about how I should handle today’s tasks, whether there were any new tech newsletters to read, whether I could go out for meals and chats with the familiar RD folks, and joke around with other coworkers.
Beyond day-to-day development, the company also set up booths at various conferences to promote itself. Because of that, I got to attend quite a few conferences for free, and I also joined offline meetups, where I met some developers who often appeared in the community.
Looking back on myself from that time, there were so many immature things about me. I was younger, with less experience and perspective, and I focused almost entirely on technology, so I didn’t really know how to interact with everyone. What I’m grateful for is that, besides the RD team, other coworkers were also very kind and welcoming, and were willing to take the initiative to chat and engage with me. I also regret how my immaturity caused me to miss out on many things. For a while, I even became very closed off and barely wanted to care about anything outside of technology.
Henry, who joined around the same time as me, was in a completely different league from the total beginner I was then. Just as Denny described in his article, as long as there was money, Netflix, games, and food, Henry could solve all kinds of technical problems.
Doubts
Not long after the Yilan trip, Denny decided to leave the company. I was the only front-end person left, and by then I had already been on the team for a while, so naturally we started talking about a raise. I remember worrying a lot and telling Denny that I felt the company had helped me a great deal. Denny replied, “It’s good that you’re grateful to the company, but you really don’t owe the company anything. There’s no need to feel indebted.” That sentence helped me a lot.
When Denny left, he gave me a book: “Fermat’s Last Theorem.” It isn’t a math textbook; it doesn’t contain lots of mathematical derivations. Instead, it introduces several mathematicians’ pursuit of Fermat’s Last Theorem. I really enjoyed reading it; for the full details, you can check another article.
I have a mathematical theory with no practical use. Outside the world of mathematics, it doesn’t make the world any more comfortable. But why should it? The pursuit of answers is itself born from desire.
That’s the passage I remember most clearly.
I think it’s amazing — you never know how the decisions you make in a given moment will shape your life later on. If I hadn’t gone through that period at Sudo, maybe I wouldn’t have accumulated so much experience in what was then still considered fairly cutting-edge front-end development.
When you have almost nothing, a company willing to accept you, and a group of coworkers willing to accept you, that’s an incredibly precious thing. I only realized that in hindsight. Yes, the company was genuinely great and paid for me to take classes, but I wasn’t contributing nothing either. Thinking back now, I was honestly pretty silly to have even turned down the chance for a raise.
The Expansion Period and Leaving
Later on, for some reason, more and more people started joining the company. At the time, I honestly couldn’t fully understand it, and I gradually felt that the atmosphere of working hard together toward a certain feature had disappeared. I also sensed that the development team’s mood was becoming restless.
During that period, a bunch of interns suddenly appeared. To be honest, I was a little scared. Part of it was because I was naturally shy, and part of it was that I had no idea what the company actually wanted to do. I also realized that my expectations of joining the company had become lower and lower, and I even started feeling afraid when people from outside the core founding team or outside engineering spoke up. Looking back now, being a consultant is not nearly as easy as it seems. Seeing them willing to interact with engineers and try to understand this ecosystem was something truly valuable. Even if I didn’t think expansion itself was a good thing, refusing to communicate with others was not beneficial to me at all, and could even cause me to miss many opportunities.
Afterword
For fun, I once documented the little stories happening in this office together with Bleeki, who was then a design intern: recorded them here. I’m pretty glad I made that half-finished blog, especially with Bleeki’s lively illustrations. To outsiders, it might look boring, but to me they’re all precious memories. Sharing cup noodles with pork bone broth and going to an internet café with the founders is something I think is very hard to experience firsthand.
I actually had a lot of complicated feelings about Sudo. On one hand, I was confused about how things had ended up this way, since the platform, while still pretty basic, clearly had room to improve. On the other hand, I thought: well, people really are the hardest part.
After the service shut down, I started looking for my next job. One thing that left a strong impression on me was that whenever I said my previous employer was Sudo, many people would say they knew the founders. Looking back now, I really think networking is incredibly important.
Once a company gets bigger, it becomes difficult to find a group of partners who can truly trust one another. I was lucky to be at Sudo, growing alongside an excellent RD team and spending my early twenties with a great group of coworkers during a truly memorable period.
It feels like a long time ago, but in fact it was only about a year and a half. I went from a beginner who could only build simple pages to a beginner front-end developer who could use React, Redux, and Webpack. A lot of the technologies at that time were still in active development, and concepts like Babel were still relatively new. Being able to learn those things at the very beginning is something I deeply cherish.
And so I’ve made it to where I am now. To me, Sudo is still a precious and unforgettable journey, and I wanted to leave a record of it here, even if it looks a little messy and disorganized. Thank you to myself, and thank you to all of you.
Related Posts
- Sudo Internship Journey (1)From 2015–7 to 2016–10, over the course of a little more than a year, I started my first internship in my second semester of sophomore year — Sudo. At that time, Sudo had only just been founded not long before (though the official website was already mostly built and was still being iterated on), and when I joined there were only about 13 or 14 people.
- A Confession from a Senior InternNo jokes today—let’s talk about something serious. It’s been a year since I came to Sudo, and looking back at the version of myself who walked into AppWorks a year ago, it feels like I’ve come a long way—a confession from a senior intern.
- Bonus Episode - Sudo Plank Challenge TutorialSudo’s after-work bonus episode—a plank showdown initiated by an RD leader. Does having more muscle mean being better at coding? The answer will be revealed at the end.
- The Second Step into the WorkplaceFollowing the Sudo Survival Guide, this time we’re rolling out Steps 2 and 3 in one go — how to endure attacks from the evil “Sudo sister,” and the everyday office life of going to an internet café with the co-founders.