Reddit 原文:Drunk Post: Things I've learned as a Sr Engineer
更新時間:2021/10/20
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.)
工程師最被低估的技能就是寫文件。X,如果有人可以教我如何寫文件,我說認真的,如果有任何課程在教這個,我願意付錢去上(只要他保證上完後,我就會寫文件,就算一堂課 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.
當我越資深,我越欣賞那些動態語言,X,我說了算,要戰就來