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. 通过批处理进行Windows服务的安装/卸载&启动/停止

    安装服务 @echo off set checked=2 set PATHS=%~sdp0 echo 按任意键执行安装……? pause>nul if %checked% EQU 2 ( %PA ...

  2. C#实现给图片加边框的方法

    Bitmap bit= new Bitmap(@"" + Path);//给图片加边框 //Bitmap bit = new Bitmap(Screen.AllScreens[0] ...

  3. JavaScript是如何工作的:Web Workers的构建块 + 5个使用他们的场景

    摘要: 理解Web Workers. 原文:JavaScript是如何工作的:Web Workers的构建块 + 5个使用他们的场景 作者:前端小智 Fundebug经授权转载,版权归原作者所有. 这 ...

  4. loj#6033. 「雅礼集训 2017 Day2」棋盘游戏(二分图博弈)

    题意 链接 Sol 第一次做在二分图上博弈的题..感觉思路真是清奇.. 首先将图黑白染色. 对于某个点,若它一定在最大匹配上,那么Bob必胜.因为Bob可以一直沿着匹配边都,Alice只能走非匹配边. ...

  5. 洛谷P4577 [FJOI2018]领导集团问题(dp 线段树合并)

    题意 题目链接 Sol 首先不难想到一个dp,设\(f[i][j]\)表示\(i\)的子树内选择的最小值至少为\(j\)的最大个数 转移的时候维护一个后缀\(mx\)然后直接加 因为后缀max是单调不 ...

  6. 章节四、2-Switch语句

    package introduction5; public class SwitchDemo { //switch用于固定值的判断,如星期.人的性别 //if用于判断区间.范围,能够用switch进行 ...

  7. (后端)Mybatis中#{}和${}传参的区别及#和$的区别小结(转)

    原文地址:https://www.cnblogs.com/zqr99/p/8094234.html 最近在用mybatis,之前用过ibatis,总体来说差不多,不过还是遇到了不少问题,再次记录下, ...

  8. ajax请求经典格式

    $.ajax({ url: url, type: "POST", dataType: "json", data: data, success: funtion1 ...

  9. SQL Server中sp_spaceused统计数据使用的空间总量不正确的原因

    很多时候,我们经常使用sp_spaceused来查看表的空间使用情况,上个月群里有个网友说他使用DELETE删除了数据后,使用sp_spaceused查看,发现该表的分配的空间总量(reserved) ...

  10. POST 400 的一次遭遇

    使用Springboot开发接口的过程中,使用POST接收提交的数据. @PostMapping("/input") public void inputData(@RequestB ...