PHP程序员的能力水平层次

  之前看过很多篇关于服务端工程师和PHP开发者的能力模型介绍,每篇都对能力有侧重点.

  下面我们来详细谈谈以开发能力为基准点的PHP程序员的能力水平层次。

  层层递进

  1.功能开发

  这个水平的程序员一般是在校学生或者培训机构学习中的同学,这时对PHP基本语法不太熟悉,做东西都靠查资料。

  对于功能实现,能用但是健壮性和扩展性都不行,也就是我们所提到的实验性项目的模块.推荐处于这个层次的同学去尝试大型的模块,去解决复杂的问题,在实际开发中提升对语言的熟悉程度。

  2.系统开发

  能实现简单的CMS编写,能使用框架实现功能,对服务器相关知识有了解,能进行简单的服务器配置。

  这里要注意的是,对于在学校或者培训机构做过的仿商城(仿京东商城等等)或者仿论坛仿博客,这些项目的作用是让学生熟悉团队开发(虽然大部分都不用版本控制,学完了也不知道),所以对于项目的可用性和代码质量还是持保留态度。

  处在这个水平的同学这时会找到一个实习生的岗位,在公司里做一些小的模块,这时候他们会发现,学校教的东西全是辣鸡!

  3.功能开发PRO

  经过实习期的打击,会再次审视之前做过的功能部分,也就是进入了正式的开发功能模块的水平。

  这时候,需求分析不再那么随意,会考虑更多的现实场景,代码层面不再使用多余的foreach,会从时间复杂度考虑自己写的代码是不是辣鸡。

  打一个比方,第1阶段做出的模块是拿沙子堆成的,那么第3个阶段做出的模块就是石头做的.

  这个时候的程序员会在一个开发小组做基本的模块开发,开始认识到需求/产品经理/UI/运维等职位的存在,并不再说自己可以独立开发商城。

  提升水平靠的是不断重复以及换角度思考。

  4.系统开发PRO

  经过一段时间的工作,PHP程序员开始注重服务器/数据库,学会对产品经理不再来者不拒,学会在实现功能的同时夹杂一些自己研究过的新玩意儿。

  大量的模块开发伴随的是大量的业务分析以及逻辑代码,大量的逻辑代码会产生大量的重复从而不知不觉的提高自己堆语言的熟悉程度,慢慢的,就会从语法层面升级到语言层面.

  恭喜你,入门了!

  这个阶段的PHP程序员会主导一个项目的开发,做完整的需求分析/文档编写/项目排期/核心模块开发,由于项目人很多,所以开始带处于第2/3阶段的同学,还有操不完的心。

  5.PHP中级程序员

  俗话说,PHP程序员是万金油.原因在于PHP作为从web开发起家的语言,需要使用的东西很多并且不可或缺。

  这个阶段的PHP程序员开始不满足于语法上的熟悉,从而开始横向发展,web服务器/操作系统/数据库开始涉猎,C语言作为基础语言再次回到视角。

  C/C++方向,编写PHP扩展.Python进行数据分析,等等。

  在公司,这个层次的PHP程序员开始做服务端整体的工作,小一些的公司的话,大概处于技术总监的位置。

  由于服务端体量大,工作重,技术扩展性强,所以更容易培养出技术型的CTO(区别于耍嘴皮子的脑残型CTO)。

  6.PHP高级程序员

  技术水平的不断进步其实也就是不断的重复,这个阶段会再次回到PHP语言层面,只是更加深层次的理解。

  在此同时,随着各个方向的积累,已经开始做大型项目的架构设计,从顶向下的分析整个系统.

  团队开发上,开始带多个开发组,同时进行项目的开发。

  行业内的人脉上,开始和其他领域的专家建立联系,方便技术交流和人才招聘.

  7.架构师

  经过PHP高级的不断修炼,就会迈入架构师的级别.大公司的架构师,也就是小公司的CTO.

  技术层面,去追求新技术,并有能力引领一股新的技术风潮。

  初级程序员的学习榜样,也就是在初级一点点向上学习的路程上必定会听说的人。

  关于进步

  目前的招聘市场存在着金字塔式的人才体量,也就是低端人才非常多,中高端人才越来越少,这也是和这几年大量的培训机构进入市场有关。

  大量的程序员在第3个阶段止步,原因在于看问题的角度,大量的技术沙龙总结出的都是方法论,方法论简单但是确实有效,就像年年看一遍人月神话,每次看的感觉都不一样。

  勤奋和眼界可以促进程序员不断进阶。

  PHP程序员们,你们现在是处在哪个阶段呢?

PHP程序员的能力水平层次的更多相关文章

  1. PHP程序员的能力水平层次(一)

    前言 之前看过很多篇关于服务端工程师和PHP开发者的能力模型介绍,每篇都对能力有侧重点. 下面我们来详细谈谈以开发能力为基准点的PHP程序员的能力水平层次. 层层递进 1.功能开发 这个水平的程序员一 ...

  2. PHP程序员的能力水平层次(二)

    PHPer的定义:PHPer是以PHP程序编写为主要工作,其他方面略有涉及的一种职业人士,大家所说的程序猿. 对PHPer的等级划分 PHP 爱好者 (半个PHPer) PHP 初学者 (PHP Be ...

  3. 从scheduler is shutted down看程序员的英文水平

    我有个windows服务程序,今天重点在测试系统逻辑.部署后,在看系统日志时,不经意看到一行:scheduler is shutted down. 2016-12-29 09:40:24.175 {& ...

  4. 南昌PHP程序员的工资水平据说可达到8000了

    有兄弟说南昌PHP程序工资水平可以达到8k,带团队可以达到10k 好消息啊!

  5. DOS程序员手册(一)

    当今MS-Windows横扫大江南北,让我们这就来研究一下它的祖宗——MS-DOS! 这本书很难得,希望读者好好学习! DOS程序员手册(一) DOS教程 (以下内容全部为原作者的阐述,照样保留) 这 ...

  6. Java 进阶 hello world! - 中级程序员之路

    Java 进阶 hello world! - 中级程序员之路 Java是一种跨平台的语言,号称:"一次编写,到处运行",在世界编程语言排行榜中稳居第二名(TIOBE index). ...

  7. 【转】这些编程语言程序员工资最高!Java才第四

    原文网址:http://tech.hexun.com/2016-07-18/185009761.html 在众多行业中,程序员属于高薪职业.无论是在国外还是国内,程序员的薪金水平普遍高于其他行业的工作 ...

  8. UNIX/Linux C 程序员需要掌握的七种武器

    我是一名普通的软件工程师,不是什么技术大牛.这篇文章所提到的"七种武器"只是我这些年工作经验的一点体会和感悟,如果有错误的地方,还请大家指正. (一)C语言 作为一名C程序员,熟练 ...

  9. 揭秘IT人才特点:中美印日四国程序员比较

    不知道大家是否已经看过这篇文章,感觉比较客观.   来自:http://www.programmer.com.cn/282/        最近以裁判的身份参加了公司举办的编程大赛,发现高手云集,对公 ...

随机推荐

  1. 【Java每日一题】20170307

    20170306问题解析请点击今日问题下方的“[Java每日一题]20170307”查看(问题解析在公众号首发,公众号ID:weknow619) package Mar2017; public cla ...

  2. SpringBoot零XML配置的Spring Boot Application

    Spring Boot 提供了一种统一的方式来管理应用的配置,允许开发人员使用属性properties文件.YAML 文件.环境变量和命令行参数来定义优先级不同的配置值.零XML配置的Spring B ...

  3. Java先比较日期再比较时间

    package com.bihang.seaya; import lombok.Data; import java.text.ParseException; import java.text.Simp ...

  4. 解密JavaScript闭包

    译者按: 从最简单的计数器开始,按照需求对代码一步步优化,我们可以领会闭包的神奇之处. 原文: Closures are not magic 译者: Fundebug 为了保证可读性,本文采用意译而非 ...

  5. PHP无限极分类原理

    1.递归:程序调用自身的编程技巧称为递归 2.案例: /** * @param 递归 $[name] */ function deeploop(&$i=1){ echo $i; $i++; i ...

  6. FE 命令随笔

    FE_CMD ————— * >>>>>>>> Vue ________________________________________________ ...

  7. vue.js插入dom节点的方式

    html代码: <div id="app"></div> js代码: var MyComponent = Vue.extend({ template: '& ...

  8. 通过 python ssh库连接并发送命令给设备

    import paramiko import time hostname = '192.168.248.156' port = 22 user = 'zhou' passwd = ' paramiko ...

  9. AndroBench手机性能测试

    AndroBench是一个基准测试应用程序,可以衡量你的Android设备的存储性能. AndroBench提供两种方式,第一种可以快速与其他设备的存储进行比较. 第二种 SQLite可以查询数据库表 ...

  10. 你不可不知的Java引用类型之——PhantomReference源码详解

    定义 PhantomReference是虚引用,该引用不会影响不会影响对象的生命周期,也无法从虚引用中获取对象实例. 说明 源码介绍部分其实也没多大内容,主要内容都在前面介绍中说完了.PhantomR ...