目录
回复内容:
首页 后端开发 php教程 如何面试 PHP 工程师?

如何面试 PHP 工程师?

Jun 17, 2016 am 08:30 AM

回复内容:

问一些日常的正常的PHP问题,主要是考察应聘者的认知:
  • 一个包含中英文的字符串如何获得它的自然长度(看看ta是否有encoding的知识和意识)
  • 问一问什么是ORM,有时候会问这个词的英文全称是什么,问问ta对于ORM有什么个人的看法?(看看ta学习细不细,有没有技术判断,PHP开发人员应该知道什么时候使用ORM)
  • 问一问假如ta要自己去实现一个framework,ta会怎么设计。(看看ta对代码架构的理解,对MVC的理解)
  • 问一问framework设计里的url dispatcher他会怎么考虑。(HTTP知识)
  • 问一问ta对框架本身的看法
  • 了解一下ta对Design Pattern的认知,比如Singleton,Observer,Factory等常用的设计模式,问一问ta对设计模式本身的看法。
  • 问两三个数据库设计的问题
  • 问几个前端的问题,哪怕ta的职位是PHP开发人员,好的PHP人员不可能不了解前端,而且很可能很了解前端
  • 问一问ta对noSQL的了解情况(对与noSQL的认识是和传统Relational DB的认知是分不开的)
  • 问一问ta碰到问题时候会如何去寻找答案
  • 问一问ta习惯使用哪一个搜索引擎(如果是GOOGLE.COM就有加分)
  • 问一问ta最近看的书
  • 问一问ta的职业规划,喜欢做什么,对工作环境有什么要求
别出生僻的题,别为难人家,更不要变相的侮辱人家,正常交流为主,你要的是一个正常的人,优秀不优秀就看你的眼光和运气了。

很多公司的技术人员招聘会刻意追求刺激的问题,比如很著名的微软的“下水道的盖子为什么是圆的”,不是说这些考察毫无道理,但更多的是一种“marketing”的手段。

Modern PHP / 中文版 / jump.im/i6 解决实际问题的能力,比现有的能力更为重要。PHP 是一门简单的语言,关键还是在于对实际需求的解决能力。问一些你遇到过的或者经验性的问题更重要。考什么算法。。之类。。崩了~ 分享一个整理的Lamp(Linux+Apache+Mysql+PHP)开发技能表,之前给社团做PHP的同学准备的。目前还不是很完善,后续会有补充。
blog.goody365.com/lamp/ 好吧,对于楼上众位的问题,我有一半以上的答不上来.
面试者向来很就主观,而且都喜欢以他所熟知的领域或者知识点来刁难对方.无论你怎么问,他的知识范围和你的知识范围并集定是少之又少(除了php基础).但是考基础的语法,又体现不出水平.除非他知识面极广,这样人早有成就了.
<span class="x">echo '1'.print(2)+3;//这种代码很多人平时都不会用到.但查手册便知</span>
登录后复制
我说点自己的经历,跟楼主的问题不太相关的。当我刚刚来到这个公司的时候,我投了简历,然后来面试了。结果,老板根本没有问我技术的问题,只是问了我一下学习经历的事情。我当时也很奇怪啊,后来在公司里面呆的时间一长,才发现,原来老板不懂技术。然后来了之后,刚开始三周,啥都没有干,没有人给我说任务。后来,就给我一个网站,然后给我一个参考网站,让我用thinkphp改造一下这个网站,中间都是我出现一个问题,然后解决不了,我就去找同事帮忙。老总说是有人带我的,结果最后还是我自己吭哧吭哧的把代码写完了。现在想来,我就是把代码熟悉了一遍,感觉有点囫囵吞枣,根本,有的代码是啥意思,我都还没有搞透。现在想来,是不是,我的基础太薄弱了。。。 1,解决问题的能力和掌握的知识,看你招聘的目的而决定其二者的平衡。了解流体力学的确会对通下水道有很大帮助,但流体力学专家未必都会疏通下水道。

2,创造力,一个没有自己作品的程序员不是好程序员。编程跟写作一样,最终的目的不是敲字,而是完成作品。有人用windows图画板画蒙娜丽莎,而有人用ps就只能调调颜色,画几条线。二者的区别就在于创造力,而不是各自都会什么工具(或者懂什么知识)。

3,自学能力。编程界每天都在产生新鲜的东西,愿意自学和主动寻求新东西,会在将来的工作上事半功倍。

4,人品。这点会大大影响后期的团队维护成本。

5,代码的优雅。不在乎大括号在上还是在下,不在乎等号左右是否有空格的程序员,一定是不够谨慎、粗枝大叶的程序员,而有代码洁癖的程序员会不断挑战自己的代码,让自己的代码日趋优雅。

6,文档习惯。喜欢查阅文档,喜欢记录文档。这是团队协作与后期维护必不可少的能力。

7,足够聪明,话少。表达能力强的人,一般都不适合当程序员(大脑神经通路的影响),除非是头脑特别好用的人,但这种人很难遇到。

下面再列些我认为比较糟糕的面试,如果面试的朋友遇到这类面试,可以考虑直接走掉:
1,出各种古怪刁钻的程序题,而且要求面试者徒手解答。人的大脑是有极限的,记了琐碎的东西,肯定就装不下更多重要的知识。

2,考察的知识点凌乱繁杂。根据经验,这类公司最后的聘用薪资都低的可怜。

3,面试官盛气凌人、轻视、频繁质疑(或者频繁确认)面试者所阐述的内容。物以类聚这个成语同样适用在职场,如果你不喜欢他或者他不喜欢你,直接放弃吧,不要为难对方和自己了。 作为公司的电面和初面的面试官,说说我个人的方式,在这之前有一个背景,就是我要招聘的人是什么人,不同的人不同的面试方法。

另外,个人觉得没有PHP工程师这一说法,PHP工程师意味着知识面一定是要比较广的。

技术线(偏深度):
1. 基础知识,比如数据结构,多线程,I/O,Http协议等
2. 语言深度,比如PHP的运行机制,性能优化,APC(以及其原理等)
3. 源码阅读,比如看过哪些框架,其中的机制是怎么样的,往细了问
4. 知识宽度,静态语言,比如C、Java等,我始终觉得只会一门语言不是什么好事情
5. 项目经验,做过什么,是否复杂,负责什么,做了什么
6. 设计,这一点和第五点比较类似

业务线(偏能力):
1. 业务能力,也就是之前做过的项目(担任的角色,负责的部分)
2. 沟通能力,这一点能从沟通中就看出来
3. 主动性,之前主动推动的事物等等,哪怕是一个小的点也可以
4. 抗压能力,之前做过的项目中去挖掘细节
5. 技术宽度,了解不一定要深入,我一般会问一些比较泛的,比如多语言,Linux操作,HTTP协议等

一定会问:
1. 有GitHub或者Blog(技术热情)
2. 离职原因和同事相处(你懂的)
3. 业余时间利用(技术热情) 新手重点笔试基础
中级重点问一些功能方案,效率,模式,算法之类的
高级重点谈谈经历 架构 负载的处理等等
然后就是相亲了,看缘分 前端:
Doctype的作用。
如何隐藏超出对象部分的内容。
Name,ID有什么区别。
怎么使用jq,jq如果要是和其他类库冲突怎么办?
charset=utf-8一般写在html什么位置?
客户端的对象资源缓存问题。
如何隐藏一个对象。
Js url怎么传递中文?
http的header里面有哪些东西?
习惯使用什么工具作为前端调试?
举例说说IE和其他浏览器几个不兼容的地方。
Ajax的使用。
会不会SEO

PHP
PHP有什么东西可以提高运行效率的。
PHP如何防止注入
会使用哪些模板
如何防止一些关键php页面被下载
会不会memcached
如何防止XSS攻击?
正则表达式

Mysql
哪几种类型的存储引擎,各有什么优缺点
平时写sql语句要注意些什么

你认为的一般性系统瓶颈出现在哪些地方?缓存,数据库,php,前台。
如何优化他们。

额外:
SEO,网站分析,用户体验。

中级php程序员
  1. 基本技术了解
    1. 数据库的基本感觉,如何优化
    2. 熟悉的框架,MVC的理解,对象
    3. 代码安全因素
    4. 缓存技术的了解,memcached等
    5. 高访问量的解决方式
    6. 平时解决问题的方法
  2. 技术积累经验
    1. 错误经验分享
    2. 成功经验分享
  3. 对前台和服务器的了解程度
    1. 基本脚本和ajax的使用
    2. lamp环境的了解
    3. linux服务器
    4. svn方面
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

<🎜>:泡泡胶模拟器无穷大 - 如何获取和使用皇家钥匙
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
北端:融合系统,解释
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
Mandragora:巫婆树的耳语 - 如何解锁抓钩
3 周前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

热门话题

Java教程
1666
14
CakePHP 教程
1426
52
Laravel 教程
1328
25
PHP教程
1273
29
C# 教程
1253
24
说明PHP中的安全密码散列(例如,password_hash,password_verify)。为什么不使用MD5或SHA1? 说明PHP中的安全密码散列(例如,password_hash,password_verify)。为什么不使用MD5或SHA1? Apr 17, 2025 am 12:06 AM

在PHP中,应使用password_hash和password_verify函数实现安全的密码哈希处理,不应使用MD5或SHA1。1)password_hash生成包含盐值的哈希,增强安全性。2)password_verify验证密码,通过比较哈希值确保安全。3)MD5和SHA1易受攻击且缺乏盐值,不适合现代密码安全。

PHP和Python:比较两种流行的编程语言 PHP和Python:比较两种流行的编程语言 Apr 14, 2025 am 12:13 AM

PHP和Python各有优势,选择依据项目需求。1.PHP适合web开发,尤其快速开发和维护网站。2.Python适用于数据科学、机器学习和人工智能,语法简洁,适合初学者。

PHP:网络开发的关键语言 PHP:网络开发的关键语言 Apr 13, 2025 am 12:08 AM

PHP是一种广泛应用于服务器端的脚本语言,特别适合web开发。1.PHP可以嵌入HTML,处理HTTP请求和响应,支持多种数据库。2.PHP用于生成动态网页内容,处理表单数据,访问数据库等,具有强大的社区支持和开源资源。3.PHP是解释型语言,执行过程包括词法分析、语法分析、编译和执行。4.PHP可以与MySQL结合用于用户注册系统等高级应用。5.调试PHP时,可使用error_reporting()和var_dump()等函数。6.优化PHP代码可通过缓存机制、优化数据库查询和使用内置函数。7

PHP行动:现实世界中的示例和应用程序 PHP行动:现实世界中的示例和应用程序 Apr 14, 2025 am 12:19 AM

PHP在电子商务、内容管理系统和API开发中广泛应用。1)电子商务:用于购物车功能和支付处理。2)内容管理系统:用于动态内容生成和用户管理。3)API开发:用于RESTfulAPI开发和API安全性。通过性能优化和最佳实践,PHP应用的效率和可维护性得以提升。

PHP类型提示如何起作用,包括标量类型,返回类型,联合类型和无效类型? PHP类型提示如何起作用,包括标量类型,返回类型,联合类型和无效类型? Apr 17, 2025 am 12:25 AM

PHP类型提示提升代码质量和可读性。1)标量类型提示:自PHP7.0起,允许在函数参数中指定基本数据类型,如int、float等。2)返回类型提示:确保函数返回值类型的一致性。3)联合类型提示:自PHP8.0起,允许在函数参数或返回值中指定多个类型。4)可空类型提示:允许包含null值,处理可能返回空值的函数。

PHP的持久相关性:它还活着吗? PHP的持久相关性:它还活着吗? Apr 14, 2025 am 12:12 AM

PHP仍然具有活力,其在现代编程领域中依然占据重要地位。1)PHP的简单易学和强大社区支持使其在Web开发中广泛应用;2)其灵活性和稳定性使其在处理Web表单、数据库操作和文件处理等方面表现出色;3)PHP不断进化和优化,适用于初学者和经验丰富的开发者。

PHP与其他语言:比较 PHP与其他语言:比较 Apr 13, 2025 am 12:19 AM

PHP适合web开发,特别是在快速开发和处理动态内容方面表现出色,但不擅长数据科学和企业级应用。与Python相比,PHP在web开发中更具优势,但在数据科学领域不如Python;与Java相比,PHP在企业级应用中表现较差,但在web开发中更灵活;与JavaScript相比,PHP在后端开发中更简洁,但在前端开发中不如JavaScript。

PHP和Python:代码示例和比较 PHP和Python:代码示例和比较 Apr 15, 2025 am 12:07 AM

PHP和Python各有优劣,选择取决于项目需求和个人偏好。1.PHP适合快速开发和维护大型Web应用。2.Python在数据科学和机器学习领域占据主导地位。

See all articles