Reddit 原文：Drunk Post: Things I've learned as a Sr Engineer
I'm drunk and I'll probably regret this, but here's a drunken rank of things I've learned as an engineer for the past 10 years.
我喝醉了，雖然這麼做很有可能後悔，但我想說說我在這 10 年工程師生涯中所學到的事情，按照我酒醉的程度來說
- The best way I've advanced my career is by changing companies.
- Technology stacks don't really matter because there are like 15 basic patterns of software engineering in my field that apply. I work in data so it's not going to be the same as webdev or embedded. But all fields have about 10-20 core principles and the tech stack is just trying to make those things easier, so don't fret overit.
技術並不重要。我是一名資料工程師，在我的領域有大約 15 個核心原則，雖然資料科學與網頁或是嵌入式系統有很大的差異，但所有領域幾乎都有 10~20 個核心原則，重要的是這些原則，技術只是落實它們的方法。你如果不熟悉某個技術，不需要過度擔心
注：原文中前面使用 basic pattern（模式），後面使用 core principle（原則），兩者其實是不太一樣的，但是統一翻成原則，讀起來似乎會比較通順（感謝臉書 Backend TW 網友大指出）
- There's a reason why people recommend job hunting. If I'm unsatisfied at a job, it's probably time to move on.
- I've made some good, lifelong friends at companies I've worked with. I don't need to make that a requirement of every place I work. I've been perfectly happy working at places where I didn't form friendships with my coworkers and I've been unhappy at places where I made some great friends.
- I've learned to be honest with my manager. Not too honest, but honest enough where I can be authentic at work. What's the worse that can happen? He fire me? I'll just pick up a new job in 2 weeks.
- If I'm awaken at 2am from being on-call for more than once per quarter, then something is seriously wrong and I will either fix it or quit.
如果三個月內，我在凌晨兩點被 on call 的次數超過一次，那代表事情很嚴重，我要麼處理它，
- pour another glass
- Qualities of a good manager share a lot of qualities of a good engineer.
- When I first started, I was enamored with technology and programming and computer science. I'm over it.
- Good code is code that can be understood by a junior engineer. Great code can be understood by a first year CS freshman. The best code is no code at all.
- The most underrated skill to learn as an engineer is how to document. Fuck, someone please teach me how to write good documentation. Seriously, if there's any recommendations, I'd seriously pay for a course (like probably a lot of money, maybe 1k for a course if it guaranteed that I could write good docs.)
工程師最被低估的技能就是寫文件。Ｘ，如果有人可以教我如何寫文件，我說認真的，如果有任何課程在教這個，我願意付錢去上（只要他保證上完後，我就會寫文件，就算一堂課 1000 美元我也上）
- Related to above, writing good proposals for changes is a great skill.
- Almost every holy war out there (vim vs emacs, mac vs linux, whatever) doesn't matter... except one. See below.
網路上很常發生的口水戰（不管是 Vim vs Emacs 或是 Mac vs Linux），那些都不重要，除了這點，往下看
- The older I get, the more I appreciate dynamic languages. Fuck, I said it. Fight me.
- If I ever find myself thinking I'm the smartest person in the room, it's time to leave.
- I don't know why full stack web devs are paid so poorly. No really, they should be paid like half a mil a year just base salary. Fuck they have to understand both front end AND back end AND how different browsers work AND networking AND databases AND caching AND differences between web and mobile AND omg what the fuck there's another framework out there that companies want to use? Seriously, why are web devs paid so little.
我不知道為什麽全端工程師的工資這麽低。我說真的，他們應該得到 50 萬美元起跳的年薪。Ｘ，他們必須了解前端和後端、不同瀏覽器間的差異、網路、資料庫，緩存，網路和移動端之間的差異，還有他Ｘ的另一個公司想用的框架。說真的，為什麽全端工程師的工資這麽低？