回文不用ACG点 这篇也没什么西洽点
这问题我这个臭酸宅应该有点资格回答 不过版上好像有同学和学弟 拜托别漏我气
本文会参杂中国用语请见谅
先说结论
难 非常难 我个人认为有两种机会
第一种是你有自信自己聪明才智PR值在台湾超过全体国民97%以上
学习时能自己开路 或是别人指点一下你就能学很快很快 非常快 快到不行这种
再考虑这件事
我自己是属于第二种机会
(以下是经验 有很多冗余的废话 不想看直接跳第四页)
大学专业种树 还继续读了研究所但没毕业 陆续找了几个专业或非专业工作
后来被找去北京的IT公司 人数约40-100(没打错) 主业务是特定行业ERP系统(*1)
米虫了几个月在每个部门都流转一阵子 最后被塞到研发工程部
当时我对于写程式的所有经验
就是高中时电脑社花四周四堂课用VB写一个只能加减的计算机 乘除写不出来
公司的研发总监被塞了我这个屎缺 用力拍胸脯保证但实际上抖到不行(26都这样 很会吹)
因为有太多我这种莫名其妙什么鸟毛都不会的新人说要写程式 然后过不到两个月就GG
然后我学习的过程
原本公司的上班时间是0830-1800 中间休息1.5小时 我每天0630到公司 2000以后出公司
上班以外的时间 还有上班时稍微没事的空档就要狂看Code
第一周
先学SQL增删改查这些基础语法 和公司产品的数据库结构
第二周
学C#的基础程式码 自己拿Winform学写一些超简单的小工具
第三周
开始帮客服解决需要在客户上线数据库中手动修数据的任务 实务练习SQL(*2)
同时开始大量读公司产品的Code 也是从这时候学到很多烂到不行的程式码写法
因为公司十个工程师只有一个是本科出身 两个是北大青鸟(类似官方版巨匠)...
第五周
开始帮忙修bug和加feature 当然这时候我什么狗屁都不懂 怎么可能会弄
总监:阿你看那里有个按钮对吧 你把里面的代码复制过去 加个按钮就好
...你他妈跟我开玩笑吧
工程师新手期刚开始读Code应该都能体会这种感觉
因为看不懂里面的东西 那段程式码对你来说是"一块物体"
只能整块Ctrl+C Ctrl+V 直到哪天发现不好使了(26用语 不起作用 没办法用的意思)
必须把"这块东西"拆解 开始研究里面一行行程式码是什么意思
搞懂了才知道问题在哪 为什么不能用 要怎么改 如果想要有不同的结果该怎么做
能力就是这样进步的 你理解的越快 进步的越迅速
我从一点点都不懂 到可以独立作业SQL和C#的Winform大约是75-90天左右
后面又被叫去开发Web应用 自学ASP.NET JQ/JS AJAX 还有各种CSS 是另一个悲惨经验...
这是都是指"搬砖" 就是26俗称的码农
要升级成"设计房子"的工程师 那就要慧根了 这个慧根我到现在还没顿悟
不知道是我太笨还是客户太GY 总觉得我想的和客户要的对不上
这就是我说的第二种机会
当公司老板是你亲戚的时候 只会种树的清洁工直接空降到IT公司薪水最高的部门
还直接指挥部门大老(但不牛只是能吹)一对一专门教你写程式 教不会扣他薪水
也没人敢吭声...还好我不是太笨 帮前辈保住他的薪水了
*1:公司从一开始就没有正式的开发流程 然后ERP又是一套非常庞大的东西
所以在做了接近四年 后两年几乎变成唯二的主工程师
所有跟Code有关的东西通通都会到我手上
一个人负责开发新产品 做新功能 修BUG 和客户抬杠 和业务休....骂
工作时数比996还多 大概是一周6.5天 一天12小时以上 周日可以偷懒半天
这种情况下 公司主产品的Code我只了解了1/2左右 还有一大半是黑洞代码
就是有人问了我还不知道有这功能
所以当初百万走路王倒的时候说黑洞程式码太多 无法解决核心问题
我太可以理解了 简直想替他们流泪
*2:公司产品做的太烂 数据常有问题
天天帮客户手动修数据库 就是线上正在用的生产数据库...
也学到如果Delete和Update时忘记加where该怎么办
"阿不好意思 你们这个服务器的硬盘有问题啦 我什么都还没开始弄就挂了"