首页  >  问答  >  正文

java - 大一/大二学生Python实习的困惑?

题主是一名非名校的CS本科学生,现在遇到了一些困惑,想请教一下热心的segmentfault网友。因为不是985/211名校,现在题主所在的这所学校我感觉学风非常不好,第一是整体水平太低,一学期结束了,班上都没几个人能用C语言写出链表来,第二是ACM校队也是没有什么价值,C9的学生喜欢膜来膜去的还情有可原,但是我们这种学校都互膜成为一种风气,非常的不自在,学不到有价值的东西。

其实一开始自己是学JavaEE的,当时也用Hibernate和Struts做了一些XX管理系统,后来想自己做个小网站,学Django然后入了Python的门,可能是并没有深入JVM等的学习,没有理会到Java的跨平台和在大型项目的优点,后来觉得更加喜欢Python,所以这学期前半部分时间都在学习Python。直到后来刷知乎,看见一些大V列出的CS学习的清单以及看了王垠大神的博客,12月份跑去学Scheme和汇编去了,放弃了Java和Python,前阵子看见轮子哥开班后,还打算去学C++。

现在2016将要过去,我也在重新思考我自己,觉得自己不能继续这样下去了,要不然到了大三大四,什么都懂一点,但是什么都不精通,但是在国内找工作又是按照语言来分类的,所以我觉得自己还是应该选择专攻一个方向,现在我想我还是选择Python吧,因为Java的话,4大框架用起来太重了,而学习Python则可以自己做一些小项目。

因为学风不好,反正我现在学的东西都是自己自学的,学校没有提供给我任何帮助,我想从寒假开始自己开始专攻Python,然后暑假去找实习

关于实习想请教segmentfault网友们一下。我在知乎看到别人列出来的清单,觉得至少要1/2年自己才能刷完那些算法题,看完csapp,scip,dragon book这些书籍。但是我在segmentfault/v2ex上面经常看见一些网友学了3/4个月就去找工作了(主要是前端/Java),工作1年后还能年薪上万。我觉得这非常的不可思议,几个月学完JavaEE的4大框架,nodejs/react/angular我觉得这是可能的,但是不是说面试最重要的是算法题吗?,从我看这些网友的博客与回答,似乎他们很多人甚至连基本排序算法都不是很了解。我收集了很多Java方面的面经,真的几乎每一份面经都说了解算法是最重要的,Leetcode刷题是必须的。我没有什么社会经验,也没有任何的鄙视意味,难道除了BAT/网易这些大型公司,对于普通的互联网公司难道真的他们面试不考算法题吗?但是为什么几乎所有的面经里面都这么强调算法题?而且我看一些尚学堂之类的培训机构,他们的培训机构的学习计划里面只有JavaEE框架的学习,没有任何相关算法的学习,这到底是怎么回事呢?

现在看些这些网友几个月就拿到offer的案例后,我觉得自己现在什么都学一点,就编译原理/Lisp这些很酷的东西学的再好又有什么用呢?因为不是名校出生,以后去找工作/实习投简历都是只能填写一个语言岗位,真的太不值了。所以现在计划完全专攻Python,同时也发现牛逼的人,比如requests库作者的GitHub里面的项目也只有Python,鸟哥也是专攻PHP。虽然Python被吐槽为胶水语言,因为入门确实很容易,但是我觉得学好了,要是还能往GitHub项目做出一些贡献的话,也是很不错的。虽然有点强迫症JavaEE想把spring/spring mvc学完再抛弃,但是觉得自己越来越不喜欢学校的风气了,长此以往会得不到进步,想早点离开这个地方,反正现在CS四大的公开课/coursera/stackoverflow什么资源都有,把听力练好了,实习工作中也可以重新学习CS核心课程。我觉得自己对CS是非常热爱的(只是学校风气太差了),以后工作实习中也不会只写业务代码,满足现状,还是会重新学习底层知识,往更大的平台发展。

写着写着好像跑偏了,下面还有一个问题就是想请教一些segmentfault网页能不能推荐一些Python实习公司?我好有个奋斗的方向。对于实习我看的一些招聘要求好像都是要求大三/大四才能去,大一/大二能有先例吗?国内使用Python的公司我了解到的目前主要有三家:知乎, 豆瓣, 扇贝,单论框架的话知乎是tornado,扇贝是django,豆瓣是自己造轮子,但这些都无所谓,我可以都学习一遍。BAT基本招收985学生,我们这类本科希望不大而且年龄大小所以基本不抱任何希望了。实习工资/工作地点的都没有任何问题,只要能找个地方锻炼能力就行。


描述的有点乱,我主要想问的问题就是:

  1. 毕业前自学几个月就能拿到实习offer的人,面试的时候难道真的不考算法吗?

  2. 除了知乎/豆瓣/扇贝这些公司,明年暑假Python实习还可以去哪里?任意地点都行,接受大一/大二学生。

  3. 重复第二个问题:有哪些具体的互联网公司可选?


补充
如果是Java的实习也行,还是有一定的基础,离明年暑假还有6个月,我也会做一些东西充实GitHub的repo。

拜托各位网友留言或者私信一下,不胜感激!


2016-12-31更新

滚回去学CS好了,练好英语多上coursera/stackoverflow,2016年的最后一天勃学让我意识到了自己的进一步失败。

和我情况一样的朋友,我们可以多充实github弥补学历的不足,如果功利一点,Python相比其他语言,star数目更加容易上涨,学风不好不是借口,练好英语上四大名校的公开课也是一样的。

@huangzhuolin的回答很理性和我现在的发展道路是一样的,@萝莉控吐槽勉的回答虽然不是完全同意,但是他和@prozsh的对话让我也收益很多。


2017-01-01更新

经过一些总结,我的问题完全在于非名校的自卑感,除了一些耳熟能详的公司BAT/网易/京东/新美大/豆瓣/知乎等名企觉得其他公司都不算公司,又担心自己进不了,或许一开始就算进了一些小公司也没有什么大不了的。正如楼下一位答主所言,学历会随着工作慢慢淡化,不可能一辈子都做写代码的程序员,其他方面的投资也是很重要的。我缺少社会阅历才会抱有一些上面的错误想法。再说自己的学历也没有差到那么差劲的地步,10%~20%之间也并不用那么绝望。

感谢各位朋友的关注/私信/回答,这类型问题纯属题主个人情感的宣泄,不同的人经历不一样,回答不能完全相信,而且程序员相比其他岗位由于缺少交往,在互联网上强答和表达欲望比较强。

此号等同于注销,建议管理员关闭这类型问题,对于别人有误导性。祝新年快乐,学好英语,打好CS基础,不要跟风,曾老师和勃学家让我这样的失败人士学到了很多,程序员并不是那么的天真。除了一个人孤零零编程,现实人生还有其他很多美好的事情。如果不是爱好的话,网红时代或许还有很多比替别人打工编程更好的赚钱方式,固定的程序员思维很可怕。

一位大神指导我说即使像segmentfault这样本心很好的公司,活跃答主的水平也不是很高,在国内的这样的环境,即使我这样的初学者和伸手党本流量暂时提高了,但是也很难找到更好的赢利方式,吸引真正的高手。程序员还不如去知乎和微信赚钱,国内很少有真正玩技术的人或者公司,所以还是练好英语多去stackoverflow上面得到免费的大神的回答,不交智商税,我这么说是希望segmentfault关闭我这个问题

此号等同于注销

ringa_leeringa_lee2741 天前1099

全部回复(14)我来回复

  • 伊谢尔伦

    伊谢尔伦2017-04-18 10:12:13

    无论路怎样走,都请保证自己每天努力,学到东西。

    回复
    0
  • ringa_lee

    ringa_lee2017-04-18 10:12:13

    学好英语才是王道, 不懂的就google 和看 Stack Overflow, 知乎纯娱乐就好, 别当做学 CS 的地方, 想要稍微好点的职业发展建议可以去 Quora 问, 知乎那几个所谓大 V 也就哗众取宠骗骗xxx了.

    最重要的还是想想自己究竟想要得到什么, 为什么而实习, 而不是一下搞着一下搞那, 我个人觉得大一大二主要还是打基础. 大学还谈什么学风, 管别人干嘛, 做你自己的事就好.

    P.S. 本人大二, 坐标帝都某末流985...以上是一点自己的看法. 欢迎交流.

    回复
    0
  • PHP中文网

    PHP中文网2017-04-18 10:12:13

    1.学校只是跳板,关键靠个人,而不是学校的名气。你需要利用好学校的资源,比如计算机房、实验室、导师等。

    2.本科期间,你需要重点掌握的是 模电 -> 数电 -> 组成 -> 逻辑 -> 操作系统 -> 数据结构 -> 算法 -> 网络 -> 数据库 -> 分布式系统 ->(如果还有时间)多媒体,而不是把时间浪费在编程语言与实习上。

    3.编程语言,一定要掌握的有:汇编 -> C -> Java -> SQL。但语言只是工具,会用就行了,没必要钻牛角尖。

    4.另外,如果你想做Web,或者游戏开发等,还需要掌握额外的东西,但这些我就不提了,因此就算你学这些东西,上述基础内容也必须要学。

    5.实力 = 理论 + 实践,所以只看书是不行的,配套的实验也要大量地做。但要权衡时间,无论是偏向与理论或实践,都不行的。过于偏向于理论会让你成为书呆子,过于偏向实践会让你成为白帽子。

    6.很多简单的问题,不要小看它。比如装机。从装机的方法,就能看出一个人是菜鸟还是大神。

    7.很多太难的问题,先去百度、Google(要学会翻墙)、QQ群、知乎、segmentfault提问,卡住3天的问题就放弃,跳过。

    如果这些东西你能学到熟练地步(考试90分以上),那么大四毕业时,试着对12306、淘宝双十二、抢票系统等几个主流问题,从电路层,一直分析到跨物理机、跨机房甚至跨半球的分布式系统层面,把这些层面串起来做一个系统分析,能达到这种层次,那么就不荒废4年了。

    另外介绍一下几个层次:

    如果每门课你都能不作弊及格,那么毕业后在北上广找个4~8k的工作不难。

    如果每门课你都能达到90分,并且能加入实验室,那么毕业后勉强混个BAT或一线大国企,也许有一定可能。

    如果本科4年,每天6:00 - 24:00,你都在学习,并且无寒暑假,连元旦节、除夕夜都能像我一样依然和同行交流专业问题,那么毕业后,在BAT当个核心架构什么的估计也不难。

    还有一种层次,大一就能带研究生并且拿到Offer,在知乎随便对某个方面的问题写几句观点就能收到一线公司的工作邀请,不过这种层次需要大机缘巧合,精英中也只有很少才能达到,我就不提了。

    最后,不要把时间浪费在各种语言上,也不要把时间浪费在实习上。你应该主攻计算机核心的那几门课:操作系统、数据结构、算法、网络、数据库、分布式系统。

    回复
    0
  • 迷茫

    迷茫2017-04-18 10:12:13

    虽然题主都在自求关闭问题了,其实看到这个问题我就觉得题主来错地方了,讨论CS学习方向应该去知乎,寻求实习公司应该去拉勾等,寻求怎么面试笔试应该去牛客网等,SegmentFault,不过是个解决技术实际问题的网站,有答案说这里的水平不高,都是框架问题,甚至是报错问题,这很科学啊,StackOverflow难道没有这样的问题吗,但是人家可以从简单的报错问题深究到底层原理,这里的答主们水平确实还不够,这是大环境。

    不过我还是简单回答第一个问题吧。
    校招需要算法考核,但是是基本的算法能力,视岗位不同要求不同,视公司不同要求不同,基本数据结构、基本算法能白板写就OK啊,除非是算法工程师、专门的数据挖掘算法之类的。

    回复
    0
  • 取消回复