作者wulouise (在线上!=在电脑前)
看板Soft_Job
标题Fw: [心得] 机械转软体工程师经验分享
时间Thu Jan 21 20:48:11 2021
※ [本文转录自 Tech_Job 看板 #1W2NU1DM ]
作者: wulouise (在线上!=在电脑前) 看板: Tech_Job
标题: [心得] 机械转软体工程师经验分享
时间: Thu Jan 21 20:45:46 2021
# 前言
想分享一下当初从进公司几乎不会写程式
到现在负责做软体的porting to Linux的经历
如果你想转软体工程师,最好先进到愿意让你写程式的公司
但是这不一定办得到,我底下分享一些自己做的功课
不想看心得可以直接跳到 # 自修建议
转这边是希望如果有甚麽地方写错
或大家觉得有更好方式,可以提出来讨论
# 个人背景
台大机械学士
硕士非CS EE ME
高中只摸过一下用C写的C++
大学只学过很废的VB忘记是不是.net
# 现职
工具机产业,领域特殊,大多使用C#与C++
对网路front end, backend不了解
工作大概就是UI跟演算法处理
# 当软体工程师的心理准备
不是学会写程式,找到薪水不错的工作就结束了
学会之後仍然需要补充新的知识
想办法write better code,并理解没有best code
因为要写软体很简单,软体要会动也很简单
难的其实是写出来的东西有人愿意用
软体不是单纯写程式,而是写出客户要的东西
不论code再乾净,东西不是客户想要的,就是浪费时间
(如果可以)花上一两天只是写prototype,确认是客户要的东西最好
over design跟premature optimization都要尽量避免
事前的沟通很重要,所以沟通(通灵)其实是很重要的一环
但不是所有公司都有办法让工程师沟通
不过以上都要痛过才知道,没痛过的人请跳过
# 通灵
当客户提出莫名其妙的要求时,猜得到他想要甚麽比较重要
啊对,通灵不是免费,应该要能反映在你的薪水上
或是找一家愿意付钱通灵的公司
# 自修建议
- Google能力
不知道怎麽建议,但是如果你发现自己不太会google,练不起来
那真的不建议转软体工程师
- OS > memory multi-thread
可以参考清大周志远,目的就是还债
作业没做没关系,至少观念要听得懂
- Design Pattern
虽然一开始看不知道在干嘛,但是把前几个先看过
配上实际例子你会比较有感觉
最好是自己的烂code一直refactor,配上下面的TDD
推荐看head first design patterns,他的实例很多
- TDD
很重要,先有unit tests再写程式可以减少很多regression问题
不过没痛过的人不知道,可以先跳过
- Algorithm
这个非CS EE可能都没有从头练过,如果没有强烈要求可以慢慢来
我是工作有遇到的至少会弄熟,或是觉得做法有点烂再去查
当然纯软免不了刷刷leet code, 不过不是很建议从leet code开始
没写过的人挫折感其实很重,不过懂多了也会影响程式架构能力
- System Design
SOFT_JOB版应该很多人推荐过,这边就不多写
以上都念过之後,对软体工作会有新感觉
至少我觉得比之前懵懵懂懂的时候了解更多了,查资料也更准
- 英文 & 通灵
当你有一点程式基础後,下班有空可以逛逛stackoverflow
选一个你熟悉的语言开始回答新手问题,他可以锻链两件事情
- 你如何理解不懂的人问的奇怪问题
- 有条理的整理你的回答
不过我累积一千多分之後就有点腻了...偶尔自己查到的问题再回而已
另一个方式是订阅一些有兴趣领域的英文digest,不一定要是程式
像是我会去NSwitch的reddit上去逛逛
# 书籍推荐
C++:
懂一点C++後,建议看Scott Meyers的Effective C++, 虽然写的时间很早
而且C++ standard都到20了,还是有很多值得一看的部分
其他书单很多,我贴个SO就好
https://stackoverflow.com/a/388282/4123703
C#: Head first, C#
Code:
Clean Code
Clean Architecture
The clean coder
中文: 无瑕的程式码 番外篇:专业程式设计师的生存之道)
这本书很薄,但是我看了很有感触,有做专案的人建议一看
--
等等,我是不知道你是看了什麽神枪手的故事,可是为什麽要拿我当靶 (′Д‵)
什麽!是黄忠和后羿的故事?他们拿的不是铳,是弓!
长门,你手上拿着苹果跟绳子是作什麽?今天晚餐不是关东煮是烤乳猪吗?
连爸爸都没弄痛过我,可不可以不要绑这麽紧,好歹松一点让我有空间逃吧,古泉。
好,我认了,要射就射吧,可是请听一下在我死前的最後一个愿望。
不 要 拿 霰 弹 来.....噗滋(脑浆声) 摘自「阿虚的最後一餐」
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 220.137.55.249 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Tech_Job/M.1611233153.A.356.html
※ 发信站: 批踢踢实业坊(ptt.cc)
※ 转录者: wulouise (220.137.55.249 台湾), 01/21/2021 20:48:11
※ 编辑: wulouise (220.137.55.249 台湾), 01/21/2021 20:48:45
1F:推 x246libra: 糟糕 开头看到台大机械硕 就想 END文章 XD 01/21 20:49
2F:推 purefalse: 我也是。 01/21 20:54
3F:推 aidansky0989: 不错啊这些都搞懂已经算不错的工程师 01/21 21:12
4F:推 a3236852: 糟糕 同一楼 01/21 21:36
5F:→ wulouise: 我是学士机械不是机械硕耶xd 01/21 21:37
※ 编辑: wulouise (220.137.55.249 台湾), 01/21/2021 21:39:15
6F:推 NTU100: 只要是好学校都机会比较大! 01/21 22:00
7F:推 worcdlo: 写的很好啊,身为转职者推 01/21 22:26
8F:推 sugarcanetea: 已收藏 想私信原po公司 01/22 00:17
9F:推 drajan: 这是台大又不是stanford 看到学校就想end是? 01/22 00:35
10F:→ DrTech: 机械做软体工程师一直很多吧。 01/22 00:44
11F:→ littlebau: 这种程度已经是很好的软体工程师了,如果能够在烂一点 01/22 00:54
12F:→ littlebau: 的天分或者经历,比较有激励的作用 01/22 00:54
13F:→ littlebau: 比方私立机械系,加上自己几乎不大会写程式,找到的公 01/22 00:55
14F:→ littlebau: 司也很普通之类的 01/22 00:55
15F:推 ntuvic: 转职第一份薪资谈多少呢? 01/22 08:20
16F:推 Sunal: 台大学士学习能力就已经赢过很多人了吧 01/22 08:38
17F:→ OrzOGC: 能转成功的就算文组也大多是前段学校的,又有过人的毅力 01/22 09:50
18F:推 pornstar: Stanford校园很多走在路上傻笑流口水滴在地下自己滑倒 01/22 10:05
19F:→ pornstar: 的智缺低能傻屌,台大素质好多了。 01/22 10:05
20F:→ leolarrel: 现在写软体真的简单到一堆转职的都能胜任,跟机车行差不 01/22 10:18
21F:→ leolarrel: 多了 01/22 10:18
22F:推 summerleaves: 同1F 台大机械学士 这能力应该前3%了 01/22 11:27
23F:→ KaoZen: 个案 没参考价值 结束 01/22 12:23
24F:推 snow0112: 推!好强! 01/22 12:42
25F:推 snow0112: 楼上,分享的内容真的很实在很具体,参考价值很高。你画 01/22 12:50
26F:→ snow0112: 地自限就会觉得全世界都是个案吧? 01/22 12:50
27F:推 kuochuwon: 推推,同样非本科系转职,目前是卡在想从现职换到更高 01/22 13:39
28F:→ kuochuwon: 薪的公司,有很多面试机会但都无声卡...很难知道自己 01/22 13:39
29F:→ kuochuwon: 问题出在哪... 01/22 13:40
30F:→ DCTmaybe: 没事啦,我考不上台大还是可以写code阿,不敢讲薪水而已 01/22 17:15
31F:推 Morphee: 楼楼上不然cv我看看 01/22 20:47
32F:→ saladim: 很多人都嘛差一个机会 会的也是一样 还不是拿到到机会 01/22 20:53
33F:→ wulouise: 有面试机会但是无声卡的话..最好找人聊,可能理解错误 01/22 21:43
34F:→ viper9709: 推一楼XD 01/23 00:09
35F:推 doranako: 书单都给你,靠自己 01/23 12:46
36F:→ maxsho: 通常有面试但是结果是无声卡大部分都是卡在要求薪资超过 01/23 12:54
37F:→ maxsho: 公司愿意给的或是年纪有些大了 01/23 12:54
38F:→ MOONY135: 觉得年纪大了不想录用,还找来面试浪费自己的时间。微妙 01/23 19:19
39F:→ MOONY135: 的思考方式 01/23 19:19
40F:推 loadingN: 有时候也会去一些没意愿报到的公司面试啊 想说会不会挖 01/23 20:17
41F:→ loadingN: 到宝 但现实通常就是不会 公司方大概也是如此 01/23 20:18
42F:推 taipoo: 推分享 01/24 02:26
43F:推 j055116: 感谢分享 获益良多 01/30 11:22
44F:推 xiao2chen: clean code 赞 02/06 08:20