文科生如何转行当程序员

文科211硕士。目前正在看做高数+数据结构+计算机组成原理+操作系统+网络的书本和习题。年纪大了,很有压力。不知最佳转行途径如何?
________________________________________________________________________________
非常感谢各位的热心回复!!求多指点!
目前现状:纯文科研三,明年6月份毕业。已报名2015年计算机科学的研究生入学考试。即还剩2个月不到的时间考试。父母亲戚一直劝我不要考研,以免错过校园招聘。同学都正在找工作或考名校博士。本人复习状态不佳,数学复习全书才过一遍,专业课王道习题做完一半。数学和专科课做过的题目遗忘速度也很快。还未敲过一行代码。担心今年考试可能上不了。
目前犹豫是去参加计算机培训2,3个月,明年春季参加计算机公司的春季校园招聘。还是今年继续考研,实在不行明年二战?
想法:1年前想转计算机。但本专业有机会申请国外的博士,就没有实质行动去学计算机。期间一年发觉文科读博比较坑。拖到今年8月份正式跨考计算机。关于计算机行业,我还未入行不知自己能够如何,只听过报考院校的同学讲了讲就业。了解不多,还请各位多指教。很羡慕向往那些大牛能够进大公司敲代码,或者以硕士申请美日本欧的cs的博士.不知道自己的路在何方。
至于文科的其他出路差不多都被我父亲否定了,包括考证他都不同意,他一反对我就没考。
_______________________________________________________________________________

更新:

至于我为什么转计算机的原因:
1.看好计算机行业。而且用数据和技术做出来的东西感觉很棒。我从7,8年前起就对计算机行业和电子行业感兴趣,没事喜欢去计算机,电子论坛玩。可惜自己没有真正踏实下来学,因为之前一直觉得我零基础不可能学会。现在越来越急迫的想学技术,想把所有的事物用数据,以及技术问题来解决。待大学待了这么久,谈理论谈得太多,证明却太少,觉得很虚。
2.喜欢程序员的工作方式,包括工作强度高,在我看来能学到很多东西。事业单位的工作觉得太闲像是养老。
3.未来有想出国的打算,计算机专业比较好出国。我师兄去了美国读文科top50本硕,回国不待见,留美也不被待见,经历太悲惨,打击了我学习文科的热情。

谢邀.
没耐心直接跳到最后一段看推荐.

看题主研三毕业,想转计算机,蛮拼的啊.这一点,就值得鼓励.
不推荐再考计算机系硕士.年龄上,没优势.原因分析如下.
不知道题主目前年龄如何.毕竟已经研三毕业,年龄不会低于26吧?
------------------------------------------------------------------------------------------------------
近2年行业形势:(限定北上广深)
计算机系科班本科毕业.大概23岁左右.
除开top毕业加成,大部分拿到入行价月薪7k+,少数更低.
入行3年搬砖,差不多25,26岁.这时候,差不多能跟同期硕士刚毕业的,持平.
当然,也看人.总体是硕士要占优,但不明显.
------------------------------------------------------------------------------------------------------
再说硕士毕业.正常25,26岁左右.
以下举例:
2014年,华科某计算机硕士毕业,拿到北京去哪儿java岗,13k*16.差不多算是硕士基准待遇.
这个待遇算一般,也不算差.仅供参考.
------------------------------------------------------------------------------------------------------

以工作5年,为一分水岭.

可发现本科入行5年,平均年龄在28,29岁.硕士为30,31岁.
也就是说30岁左右.差不多是第一个分界点.

------------------------------------------------------------------------------------------------------

我有幸拿到过部门员工就业年限表(近200人的样本).包含2000年后入职的同事年龄和职位信息.当然我不可能公布此表.仅说结论.

1. 同年入职的,5年后,拉开差距.成功进阶者,继续保持领先.
2. 未能进阶的,自动掉到比自己晚入职5年的梯队,继续等机会.跟后进者竞争.且无优势.
3. 同年,相邻年入职,差距不明显.但间隔2年,出现明显资历效应.
4. 10年后,极少数人,越N级至顶端管理层.少数人,连续进阶3个level以上.普通者2个level.另一些踏步.

------------------------------------------------------------------------------------------------------
此表包含我身边30多岁的大把同事.分析完这个表格,唏嘘不已.
在任何一家上规模的公司.30岁,如果没上去.基本上,就很难了.

管理层普遍会注意到年龄,筛简历的时候也会注意,尤其是招PM等初级管理岗.
年龄,是一定会考察的.
30岁以后,仍写代码的人很多,但是要看拿多少钱.
如果拿的初级程序员的钱,你愿意干吗?

你的年龄和薪资如果不匹配,是灾难.
年龄,通常的含义,代表能力level,代表你值多少钱.
如果达不到,企业宁愿用新手.谨记.


回头看完分析.我相信,你应该能理解.为何不建议再考研究生.
时间成本,你耗不起.利弊分析,继续读研的风险也是高过收益.



较优策略:
自学,并尽快工作.
理由:
1. 3年从业经验,正常努力,基本能达到和同期刚毕业的硕士薪资.
2. 3年工作经历,能让你清醒的认识到,你究竟是不是适合吃这碗饭.(题主别急着跳碗里来.)
3. 读硕士徒增风险,在年龄劣势的情形下,无实际工作经验,与同等学历的年轻从业者,无任何竞争优势.


------------------------------------------------------------------------------------------------------
自学.文科想转计算机,路子有点难.
基础的<算法><数据结构><OS><网络><数据库>等课程都不是一下能补上的.
也就是说,就算转进来,能做的,也都是难度略小的工作.
比如web开发,前端,android,iOS等app开发.
这样看起来让人觉得气馁.就像是外面大把培训机构的课程设置.
对.因为只有这些课程,才适合外行.所以大把的java,android,ios培训.
------------------------------------------------------------------------------------------------------
那么你如果真的有毅力.
计算机的基础课程,是必须要学的.自然是你自己想办法挤时间学.
目前的行情是搞android和ios的程序员,工资是不低.搞web的也可以.
------------------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------------------
说到这,才说到有用的吧.

1.学python2.7. 有很多理由推荐你学python.我只说2点.一是简单,二是写python拿钱多.我觉得这俩理由就够了.买本<<python核心编程>>,装上pycharm,把<<笨办法学python>>上面的例子习题都敲一遍.再用flask,web.py等框架搭个小网站.<<python cookbook>>也值得买.(评论有问到该学python2.7还是3.X,答案是:目前大多数实际开发,都是用2.7,因为实际项目开发有很多依赖的包,都只支持到2.7,你用3.X干不了活.不需要纠结.等3.X普及,你写的2.7代码,都可以无痛移植,妥妥的不用担心.)
《Python核心编程(第2版)》([美]丘恩(Chun,W.J.))【摘要 书评 试读】《Python Cookbook(第2版)中文版》【摘要 书评 试读】
2.学点javascript.html,css啥的. 学一下Bootstrap,搞web前端.推荐买下面这本.基础跟着W3school在线教程学足够.
《JavaScript DOM编程艺术(第2版)》(Jeremy Keith,Jeffrey Sambells)【摘要 书评 试读】W3school在线教程 :HTML 系列教程
3.学点数据库.python自带sqlite要用.mysql最好学一下.<<SQL必知必会>>这本,必买.
《SQL必知必会 第4版》([美]Ben Forta)【摘要 书评 试读】
4.数据结构和算法.既然是跨专业,<<大话数据结构>>,<<啊哈,算法>>这样的书.比较适合.你要是真去学<<算法导论>>巴拉巴拉啥的.估计你这辈子都和挨踢无缘了.谨记.(跨行,就别想成多大的牛了)
《啊哈 算法》(啊哈磊)【摘要 书评 试读】《大话数据结构》(程杰)【摘要 书评 试读】
5.学点linux.可以选ubuntu,推荐centos.不要纠结哪个分支.选一个用.然后学点vim命令.推荐<<鸟哥linux私房菜>>.
《鸟哥的Linux私房菜 基础学习篇 第三版》(鸟哥)【摘要 书评 试读】
6.学点java搞android也可以.不推荐搞ios.原因很多.java的话,我大学时看<<java核心技术>>8版卷一学的,蛮不错.都更新到9版了.不知道现在是啥行情.==!
《Java核心技术·卷1:基础知识(原书第9版)》(Cay S. Horstmann,Gary Cornell)【摘要 书评 试读】

适合跨专业转行者的工作岗位有限.上面说的这些,起码还能有个体面的薪水.
欢迎补充.

另外:
有很多人跨行成功,但是有更多的失败者.
搞IT,是看智商的.

我一般保守认为本科考进985的跨行狗,智力应该够了.211应该也还好.自己把握.
希望对你有所帮助.



----------------------------------------------- 华丽分割线 ------------------------------------------------------------------
看评论,挑几个回复一下:

@reyen zhen我有几个问题想问下 在大学期间有接到真实项目做过并且成功交货,那么出去找工作是否比那些没有做过真实项目的985或者211的学校的有优势?另外考证(如什么CCNA,CCNP,红帽认证等等)能提高多少优势?

回答:
1.有做过企业级项目的,必然加分.可以秒其他无实际项目经验者.不过事实上:就算是一般985学校的学生,也没几个有机会接触到真正的项目开发.这个想法,可以有.实现上,不靠谱.
2.考各种CCNA,CCNP垃圾证,差评 ! 负分 ! 切记!不要往自己的简历写你考过啥计算机二级,三级,软考等等.写这些,很有可能被一些"简历过滤器"直接筛掉.一看就是业余货.你考一个业余钢琴手,去参加专业级比赛?作死?
3.你可以写你的Github,加分,加buff.首先会用git,就说明不是某个山沟沟出来的土鳖.印象分就有了.其次,有github,直接看你代码就知道水平咋样了.编码风格,习惯,代码质量,项目管理等等,各种细节都可以挖掘到.所以,用心搞好Github.是很必要的.再次,把自己写的练习代码同步到git上.就能让面试官看到你的学习timeline,可以直观的看到你的学习历程,代码质量的提高过程,学习曲线.等等等等.面试官能找到自己想要的.
4.既然玩了Github.自然要用到markdown,所以也简单学一下.做简历装逼也不错.
5.多说一下利用github学习.大学时候,也不知道这玩意该怎么用.工作之后,用多了.慢慢掌握技巧.看知乎上其他人推荐的github项目,先找小项目,自己fork了,代码down下来,慢慢学.满世界都是资源.就看你能不能沉下心学了.说再多都没用.



@Anastasia我看到不少回答里面都强调数学与算法对于程序员的重要性。若不考研经过专业培训,能否成为一名好的程序员呢?

回答:
1.数学很重要.没人会否认.数学决定你所从事的岗位复杂度.(只代表难度,不代表薪资)从事图形学,游戏开发,数据挖掘,机器学习,搜索引擎,算法研究等很多高精尖的岗位,对数学要求都非常高.这些岗位难度属于金字塔尖部分.(不代表薪资)
2.数学决定你的晋升天花板高度.选择不同语言的岗位,初级,中级,差别不大.但是往后就不一样.玩java,初级阶段秒C++,但是等到中级,高级阶段,C++发力,甩java十几条街啊,摔.写java拿到月薪20k的,估计是凤毛麟角.写C++的,可以看轮大,轮百万.这其中跟数学关系很大.基本上玩啥语言都是,玩到后面,就看你数学好不好,计算机基础课程是不是扎实.基础不行,后面就虚了.很多人卡在15k+,就再也上不去了.
3.数学不好,怎么办?很简单: 要么你拼命去学好.要么不搞数学就好啦 ! (满世界都是数学不好的代码汪,不需要自卑.) 数学不好,可以慢慢补.先解决生存问题.你去写web,写app,用到数学的地方很少.都是别人写好的API,随便调.照猫画虎.
4.数学不好,是不是一辈子搬砖命? 我以前也担心这个问题,后来工作以后,就彻底不担心了.很多数学汪,情商超低! 在任何一家企业.你代码写的再牛逼,数学再叼,也都只是一颗螺丝钉.你如果选择作工具.那注定被人拿来用.但是,你如果选择作使用工具者,你就领导"工具".
5.数学不好,可以选择领导数学好的代码汪嘛...我擦勒,好腹黑有木有.学会扬长避短.发挥自己的综合素质.马云这样的人,凭啥领导一群"看似比他聪明的人"? 多动脑.不多说.
6. 软件行业,周边岗位,有很多不是看代码水平.不少是比拼创意,比拼跨界思维.什么是跨界思维?就是具备整合能力,把不同行业,不同背景整合一起,创造指数级价值增长.
7.没必要对数学耿耿于怀.小孩才看智商.大人只论成败.眼界不要太狭隘.成功从来不是只有一条路.表面上的最短路径,不见得就真是.很多人谈大学,言必谈THU,PKU,你是复旦交大都不好意思评论.谈出国,不是Harvard,MIT,CMU,你都不好意思吭声. 其实啊,too naive.哪怕你一生走捷径,又如何?到最后,还不是被人弯道超越.人生是3维,4维,5维的,不是2维的.

贴张图:
20年前的一张图.居中坐的是张亚勤.
20年后,再看看,座次是不是该调整一下了?要是有马云,会更欢乐.



good luck.

萧井陌,░▒▓██不用电脑的程序员

想转就能转,具体怎么转起来好,请关注我这个答案的更新。
还有,你能不能再详细说说你的现状和想法


Update
——————
那个。。。。有点抱歉,一来呢我最近很忙,二来我的一些想法一直在酝酿之中,没想好怎样表达出来。

我先说2点:
0. 找一本《计算机导论》类的书籍看看,了解一下行业大致情况,随便翻翻就好了。
1. 去维基百科翻一下历年图灵奖得奖情况,粗略了解一下行业历史。
2. 学习一门语言,python。学习资料可以是《笨办法学python》(有好书也可以推荐)


Update@Anastasia
——————
0. 好好看懂《python核心编程》
1. 跟着这个答案走WEB开发还有前途吗? - 知乎用户的回答


接下来我再更新


问答板块:
问:为什么不可以学xx语言,一定要学python吗?
对:你可以学任何语言,拿不准,就学python,我以它为示范语言。

有问题再评论,我补充到答案种

软刀,it白痴

高数,目前基本用不到
剩下的坚持看进去

大部分时候,编程都是简单的api调用
不过一些好的公司对算法数据结构有要求

如果想快速入局,可以学python+django去弄个网站(回头补数据结构和算法会很累,建议一次性解决,不走捷径)

winter,程序员

数据机构……

我怎么没看出来是文科生,也没看出来想当程序员呢……

正经答案是:认真一点谁都可以的。




转载请注明:http://www.xxcyfilter.com/zyxz/zyxz/13.html