专栏首页java一日一条请不要说自己是Java程序员

请不要说自己是Java程序员

几年前 Reddit 上有个关于招聘的笑话:

面试官问:你用过 Python 或者 Django 吗?
答:我三周前去过动物园,这个算吗?
面试官:你被雇佣了。

一周后,这位应聘者用 Django 给他们的产品写了一个在线论坛。

英文的玩笑,用中文看有点不太容易懂。它的意思就是一个关于 Python(蟒蛇)经验只有三周前去过一次动物园的程序员,只要他足够的好,他也可以用一周的时间,基于 Python/Django 完成一个在线论坛。

经常在网上看到各种标题为“Java程序员”、“PHP程序员”、“C/C++程序员”的招聘帖子,但我感觉这种招聘方式,很难找到好的人才。语言只是一种工具,对一个聪明的程序员来说,用没用过什么工具主要是由他原来的工作需要决定,并不能代表他全部的技能。

另外,一个软件产品往往涉及很多方面的知识,比如网络、数据库、Cache、编译环境工具等。如果这些必要基础知识不足,很难很好的独立完成一个产品的某个部分。

另一方面,一个人的聪明程度、对新知识的好奇心、自我驱动意识、为问题找到最佳解决方案的决心,才是他能不能成为一个好程序员的关键。举个例子,我在担任 JPush CTO 的时候,有位同事本来是服务器端以 C 语言为主做开发的,完全没有过 iOS 开发经验,但他表现出对 iOS 开发很有兴趣,并且在做服务器端开发时,表现出良好的学习能力,后来我把他调到 iOS 组,负责 iOS SDK 和 APNs 相关的工作,结果只花了几个星期,iOS SDK 的稳定性大幅提升,解决了多个致命问题。

我经常在团队里强调,不要把自己定位为某种语言的程序员,说自己是 Java 程序员,C 程序员,Python 程序员等等。一方面会限制自己的发展,一方面对团队整体的能力提升也不利。几乎所有的语言都有它自己的适用场景,在合适的地方用合适的语言,才能极大的提升生产效率。

正确的做法是,首先要有良好的基础知识,深刻的掌握2~3门语言,然后适用于不同场景的语言要了解概念。基础知识包括各种计算机原理、数据方面的知识,在学校没认真学的,现在有时间也要补充。语言方面比如掌握了 C/Java,那 C++/Python/Bash/Javascript/CSS等都可以了解下概念,至少要理解在一个完整的产品链里,它们分别适用于哪个环节。

标题用“请不要说自己是 Java 程序员”没有贬低 Java 程序员的意思,Java 是目前被采用得最多的语言,主要用 Java 的程序员里,也是有大量牛人。另外,同样的,也不要说自己是 C 程序员、Python 程序员。

之所以用 Java 作为标题,一是现在以 Java 语言为主的工作非常之多,另外在学校里就以学习 Java 为主的人也越来越多。但我发现,从学校就以学习 Java 这种高级语言为主的人,很多基础知识比较薄弱。高级语言掩盖了太多细节,提高了生产力,但在学习阶段,却不利于基础知识累积。

软件行业是一个非常强调人的价值的行业,价值就体现在有效的推动产品前进,而语言只是实现这个价值的工具。

本文分享自微信公众号 - java一日一条(mjx_java)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2016-05-17

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • iOS-JavaScript交互方案:网页监听APP返回键(goback)+APP监听网页返回键(JS调用OC对象方法)

    新建CMWebViewController,让其继承UIViewController,即:

    陈满iOS
  • iOS·为WKWebView实现夜间模式切换/网页背景颜色切换功能

    陈满iOS
  • Mac OS X 安装 JDK备忘

    oracle官网从jdk1.7开始才有Mac版的安装包,但有的项目必须使用jdk1.6,所以必须从其他途径安装jdk1.6了。查了下发现,要想安装jdk1.6,...

    Allen Cheng
  • 我需要一台好点的服务器

    知道 Jira 这个项目管理工具已经很长时间,尤其在国外非常流行,最早给国外客户做项目时很多提供的项目管理系统就是 Jira。 关于Jira 你还应该知道以下...

    mafeifan
  • 解决在 IntelliJ IDEA 时,搜狗输入法不跟随问题

    最近从华为离职并入职了新的公司,在新领的电脑配置好开发环境后就开始愉快的打码。可是在我要输入中文注释的时候,发现在 IDE 里面没法正常使用搜狗输入法,表现为输...

    Allen Cheng
  • 我是怎样一步步加入程序员大军

    对于文章所描写的那样,程序员是一群一年四季只有衬衫,短裤,拖鞋,电脑包,黑色眼睛的一群高薪繁忙的单身狗。

    君赏
  • 一个比较扯淡的跨域问题

    2018-08-27更新: 使用cookie前强烈建议先看下MDN的这篇基础文章 创建cookie可以配置的选项 Expires,Secure,HttpOn...

    mafeifan
  • 在公司内网如何更新IntelliJ的插件

    最近小伙伴们更新IntelliJ后,发现没法安装或者更新插件了,每次尝试在线安装时总会提示SSL错误。特别是要玩Scala的小伙伴更是抓狂,因为本身Intell...

    Allen Cheng
  • Spring Boot 最佳实践(五)Spring Data JPA 操作 MySQL 8

    JPA(Java Persistence API)Java持久化API,是 Java 持久化的标准规范,Hibernate是持久化规范的技术实现,而Spring...

    王磊的博客
  • Java核心API需要掌握的程度

    最近总结,发现自己没啥提升,准备开始练级,记下这个,给自己一个目标。Java的核心API是非常庞大的,这给开发者来说带来了很大的方便,经常人有评论,java让程...

    Allen Cheng

扫码关注云+社区

领取腾讯云代金券