学习方法一:实践,应用,坚持。

【swoole-韩天峰】

我最开始工作也是在2家小公司,后来加入腾讯阿里,主要原因还是我坚持学习基础知识,从而得到了这个机会。有几个方面的基础知识,我建议每一位PHP程序员都应该好好学习一下。我推荐几本书给大家,包括深入理解计算机系统、现代操作系统、C程序设计语言、C语言数据结构和算法、Unix环境高级编程、TCP/IP网络通信详解。另外我建议大家学习一下面向对象方面知识,PHP这方面的书不太多,建议看Java面向对象编程、Java编程思想、J2EE这些书。PHP语言基础方面,建议认真地把PHP5权威编程这本书好好读完。另外不光要读,还要照着书中的讲解动手去编程实践。

【多隆-蔡景现】

我坐火车经常一坐就是七个小时,真的感觉太长了。一到上班的时候,早上9点过来,一直到晚上6点,我都不知道时间怎么一下子就过去了。因为你有事做,不会觉得很辛苦。所以说真的需要热爱这份工作,要不然你会觉得怎么老是加班。

在我看来的话,没有所谓的大神、大牛,真的都是从做项目开始。我刚开始的时候其实什么都不懂的,比如2000年进阿里的时候,我连JAVA都不懂。当你在工作中遇到问题了,就去找资料,然后去把它弄懂、弄会。只要肯花时间和力气,那你自然而然就会了。

发现问题,解决问题,不要绕开问题的本身。工程师对于代码,一定要“精益求精”,不论是性能,还是简洁优雅,都要认真打磨自己的作品。

【雪候鸟,鸟哥,惠新宸 @Laruence】

你是如何成为 PHP 开发组核心成员的?

我其实一直都在研究 PHP 的源代码,所以也提交了不少 Bug 和 Fix,比如我记得有一天中午,Rasmus(PHP 之父)在 IRC 上说发现一个 Bug,我差不多 5 分钟后就给出了 Fix。

等慢慢的和一些人熟悉,得到了大家的信任以后,我就发起申请,之后就获得了 PHP 核心代码的提交权限,参与到 PHP 的直接开发和 Bug 修复中,成为了开发组的一员。

至于说核心么,那是慢慢积累来的,其实也是一个互信的过程。如果你的工作大家认可,那么就会尊重你的意见。我慢慢地和 Dmitry Stogov 变的熟了起来,得到了 Zend 核心部分的提交权限,提交了很多核心 Bug 的修复和新特性,再后来成为了 Zend 外聘顾问,慢慢成为了 Core Developer。

问:一名合格的 PHP 工程师的知识结构是怎样的?

我记得以前有一句话说:“ PHP 工程师都是万金油”,其实这句话不仅仅对 PHP 工程师适用,应该对所有的工程师都适用。

知识结构要很广。Web 开发涉及的技术点是比较多的,HTML、CSS、JS、SQL 这些以外,还要懂得一些 Nginx、Linux、Mysql 的配置、维护、排错常用的办法,这些都应该懂一些。

问:除了技术能力之外,你在面试的时候还会注重什么?

我会特别注意思维清晰、沟通、谈吐。其实说穿了就是未来一起共事的话,会不会有障碍,以及成长潜力是否大。

【洪剑峰】
待过大公司、创过业、混过外企、写代码、做架构、带团队……洪剑峰的经历相当丰富。

要时刻注视远方,走正确的路。我一直相信努力不如选择重要,选择一个适合的方向,你就会事半功倍。应该把更多的精力放在判断方向、选择道路上,而不仅仅是闷头苦干。

对我来说,我宁愿作为团队的Leader,站在前面,找到正确的方向,告诉大家怎么做,这对团队的益处远远好过我自己去做一些具体的事情。

我每年大概会看20多本书,技术相关的大概一半,基本都是英文的,另一半主要是历史类、社科、经济、管理之类的,对提高架构思维很有帮助。除了陪家人,我基本都待在公司,其余时间就是阅读和写代码。

【李智慧】
我在做CTO之前,在离开Intel前的最后三个月大概写了一万行代码。但是做CTO之后没有为公司写过一行代码,我会review代码,review架构设计,但是我不会写代码,我觉得每个人都应该也有责任把自己的工作做好,CTO的工作职责不是写代码,CTO写代码是一种越俎代庖。

学习知识技能首先需要时间,工程师应该用工作时间的20%去学习,如果工作时间抽不出空学习,可以用加班时间学习,如果加班时间也被安排满满的,至少能忙完这一阵(自己熟悉了情况后)可以有机会安排时间学习。如果这种机会和希望都没有的,如果你对自己负责的话,我建议你还是辞职吧。

【贺利坚】
学习编程最好的方法就是实践。通过实践,享受程序运行正确带来的快乐,树立信心;通过实践,享受在错误中不断成长的快乐,训练出敏锐的感觉和与bug作斗争的耐心;通过实践,看书中可以不断找到“哦,原来是这样”的感悟,书本中的知识也能够鲜活起来。

【陆其明】
陆其明,北京爱奇艺科技有限公司PPS上海公司研发总监。

有人曾经问我,“你这样把技术都说白了,不怕别人超过你吗?”我说,“我不怕,因为我也一直在进步!”况且,我相信,特定的技术都是有保鲜期的,唯有分享才能发挥它的最大价值。我只后悔自己当年分享得还不够,有一些代码至今还沉睡在我的硬盘里,而它们现在已经几乎没有任何价值了。

思维方式首先要改变。做技术只要顾着自己就行了,而做管理的时候,要把关注点从自己身上转移到团队,要保证整个团队的可持续性高产出,“大家好才是真的好”。

要站高了看问题,多从公司利益、业务需求、用户体验等角度去思考问题,这对习惯于讲逻辑、细节导向的技术人员来说是很难做到的。

技术人员一般不善与人沟通。但既然做起了管理,这方面必须加强,既要做足内部的沟通协调,又要担当团队的保护者和代言人。

所谓激励,就是要充分调动团队的工作积极性。一说到激励,可能大家的直接反应就是钱。其实,金钱并不是最好的激励方式。各人有各人的情况,每个人在不同的阶段也有不同的需求,因此激励的方式也应该是多样化的,比如一句鼓励或感谢的话、请他吃顿饭、培训机会、晋升机会等等,当然加薪、奖金、股票、期权有时也是不可缺少的。最关键的是,要将个人的发展与公司的发展紧密地联系到一起。对于管理者来说,尽量做到公平也是至关重要的!

我们在心里要明白:写代码不是目的,发布产品也不是目的,我们的终极目标是解决用户的问题。

【任玉刚】

在Android开发的学习过程中,我主要通过如下几种方式来学习:

  1. 在公司进行产品开发;

  2. 阅读Android源码和Android官方文档;

  3. 写技术博客对知识进行总结和分享;

  4. 关注Github中优秀的开源项目并提交自己的项目;

  5. 在公司内部做技术分享;

  6. 阅读相关技术书籍;

  7. 业余时间持续学习。

【邓凡平】

我个人感觉在工作中很少能学到系统性知识,所以在此也鼓励读者一定要抽出整段时间来学习系统性知识。一个基本原则是:由点及面,努力构造完整的知识结构。

不要沉迷于技术本身和工具,要时常思考自己要做什么,做哪些东西更有价值。软件领域可学的东西太多了,但是切记要结合需求选择最合适的内容。这年头我们不缺乏做事的勇气和努力奋斗的精神,缺的是知道自己要做什么的思考以及抵御外界诱惑的定力。

求知欲是人的本能,很高兴自己一直保持了这种本能。另外,做好时间管理、明确自己的目标也非常重要。对于一些初学者我有一些以及和我一样仍在努力的人,有几点建议:

  1. 在工作初期,先求广度,再求深度;只有见识面广,才有可能融会贯通;要努力接触新事物;Be Active。

  2. 工作三年后,要选择适合自己的。这个时候,知道自己要做什么,比知道怎么做更重要。

  3. 要有团队精神。覆巢之下无完卵。团队不好,个人也不会好到哪里去。大家要齐心协力把事情做好,不要过多考虑个人得失。

  4. 要有定力和钻研精神。在知识学习上,高投入才可能有好产出。

  5. 注意身体健康。活得越久,才能学得更多嘛。这是硬件,没有它,任何软件都跑不动。身体健康与否作为一个人最重要的风险因素,相信软件工程师们一定会重视并加强控制的。

【左程云,华中科技大学本科(计算机科学与技术)、芝加哥大学硕士(计算机科学)。IBM软件工程师,百度工程师,GrowingIO工程师、刷题5年的算法热爱者。】
一般来讲,工资高的公司在面试时算法和数据结构题目的比重较大,工资一般的公司比重较小。当然同样公司的不同岗位,要求也会不同,但总体趋势就是 国内好公司爱考算法和数据结构 。这是目前国内互联网公司的情况。国外的互联网公司几乎只考算法和数据结构,早个8年前就是这样了,一直如此。我相信国内会逐渐变得像国外一样,并不是崇洋媚外,而是算法和数据结构题目真的能考出东西。
因为本科和硕士阶段都是计算机专业,所以走上编程之路的过程是非常自然的,但我真正享受编程的过程是在开始做算法和数据结构的题目之后,牛人们写出来的东西怎么就是比我快呢?所以开始研究起来,并越来越痴迷。程序=算法+数据结构,所以不存在结合的问题。常用的语言是Java。

大牛的IT经验,方法【跟,帮】的更多相关文章

  1. 想成为一个高效的Web开发者吗?来看看大牛分享的经验吧~ #精选JAVASCRIPT前端开发

    想成为一个高效的Web开发者吗?来看看大牛分享的经验吧~ 作为一个软(ku)件(bi)工(de)程(ma)师(nong),你有没有觉得做什么事都没时间?没时间学习新东西,没时间去回顾.整理原来写的烂代 ...

  2. JNI 翻译 转 Delphi 的 经验 方法

    首发在 ①FireMonkey[移动开发] 16523232 欢迎使用 FMX 开发手机程序的高手来访. 注意:如果您看了本文,翻译了 JNI,请发布到本群共享一份.不同意本规定的,请立即删除本文.凡 ...

  3. 数据可视化之powerBI技巧(二十二)利用这个方法,帮你搞定Power BI"增量刷新"

    Power BI的增量刷新功能现在已经对Pro用户开通,但由于种种限制,很多人依然无法使用无这个功能,所以,每一次刷新,都要彻底更新数据集.这对于量级比较大的数据集来说,着实是一件耗费时间的事情. 拿 ...

  4. 常用JS调试工具使用方法,帮你快速定位问题(Firebug+ IE“开发人员工具”)

    来源: 这里花了点时间小结了下目前项目中比较合适易于上手的JS调试工具.方法.优点与不足以及一些调试相关功能要点或策略,分享给同学们,只当抛砖引玉了,欢迎大家讨论补充. 一.Firebug:如果项目可 ...

  5. 弹出页面第一次加载可以生成table和方法的绑定,第二次点击进来不能生成table和方法的帮定

    问题原因: 弹出页面的写法是每次点击都会在原有页面基础之上新添加一个将其覆盖,原有页面不关闭.我用的生成table和点击事件的绑定是id选择器.页面中只绑定第一次的页面,第二次的页面作用不上. 解决: ...

  6. linux + eclipse + cdt 报错undefined reference......好麻烦的,这位大牛给出的方法可行,特此MARK!!!!

    http://bbs.csdn.net/topics/390239632 kerosun kerosun 等级: 结帖率:96.92% 楼主 发表于: 2012-10-11 12:00:51   比如 ...

  7. ()IT 职场经验)一位10年Java工作经验的架构师的经验分享,感觉很受用。

    阿里巴巴技术大牛黄勇的经验分享,感觉很受用. 关于IT 职场经验 1. 把技术当成工具 技术这东西,其实一点都不神秘,它只不过是一个工具,用这个工具可以帮助我们解决实际问题,就这么简单. 我们每天在面 ...

  8. 资深技术Leader曹乐:如何成为技术大牛

    From: https://mp.weixin.qq.com/s/QaBTm_9AJC01Isr3LLR3aw 原创: 曹乐 公众号: 再成长一次 看了下面这篇文章的话,应该会有收获. 虽然排版不好, ...

  9. python快速生成注释文档的方法

    python快速生成注释文档的方法 今天将告诉大家一个简单平时只要注意的小细节,就可以轻松生成注释文档,也可以检查我们写的类方法引用名称是否重复有问题等.一看别人专业的大牛们写的文档多牛多羡慕,不用担 ...

随机推荐

  1. 创建存储过程 in,out,inout

    in: 输入参数,存储过程如果修改了参数值,那么不能被返回. out:输出参数,存储过程中修改了参数值,可以被返回.inout:输入参数,存储过程如果修改了参数值,可以被返回 注意参数格式:  in  ...

  2. vue深度监控数据改变,缓存数据到本地

    项目效果图: var vm = new Vue({ el:'#app', data:{ students:[], }, watch:{ students:{ handler(){ localStora ...

  3. 增长中的时间序列存储(Scaling Time Series Data Storage) - Part I

    本文摘译自 Netflix TechBlog : Scaling Time Series Data Storage - Part I 重点:扩容.缓存.冷热分区.分块. 时序数据 - 会员观看历史 N ...

  4. echarts 中国地图 数据自动提示

    mounted() { // 首先每种图是根据series -->type决定的 eg:bar--柱状图 line 折线图 pie饼图 map地图等等三部曲 跟着走 // @第一步都是初始化 v ...

  5. win openssl 生成证书

    第1步:生成私钥 有密码:openssl genrsa -des3 -out private.key 1024无密码:openssl genrsa -out private.key 1024 说明:生 ...

  6. chrome浏览器多开的方法

    Chrome浏览器在上网的过程中,会保存一些用户数据,如缓存.cookie.收藏的网页等信息. 这些信息的保存位置是可以设置的.方法也很简单: 桌面上复制一个Chrome的快捷方式,编辑属性,添加-- ...

  7. OpenStack-Neutron-Fwaas-代码【二】

    上一节从代码层面来讲解了fwaas的流程,这里通过具体查看iptables规则来说下应用规则的流程: 1.首先通过命令获取当前路由中的规则 #ip netns exec qrouter-[router ...

  8. Vue系列之 => webpack处理样式文件

    处理css文件 安装 npm i style-loader css-loader -D main.js import $ from 'jquery' //Es6中导入模块的方式 import './c ...

  9. sql 与 mysql

    my sql 中=和!=运算符是不起作用的:

  10. zigbee 中ZDO的理解

    ---恢复内容开始--- ZigBee     物理层:主要进行无线数据的收发,同时定义了无线传输的信道以及频率.      MAC层:使用CSMA-CA机制接入到无线信道,负责传输信标帧,保持同步和 ...