【后端通用开发水平段位:超越在职开发和自由开发界限】
初级程序员:会编写简单的系统。很多功能都是第一次开发,关注点是可以正常运行。
中级程序员:会编写较高质量的系统。例如处理MySQL数据表不同关系的设计和开发。
高级程序员:会编写高质量的系统,对分布式系统有一定的认识和经验。(少于50%)
架构师:对分布式系统有深入理解和掌握,对底层原理有一定的理解。(少于5%)
技术专家:对分布式系统有深入理解和掌握,对底层原理有深入的理解,在特定领域进行底层开发,例如开发语言框架或者开发语言核心开发者。(少于1%)
技术大神:开始时期独立撑起一个具有巨大影响力的技术体系,例如Java之父,Python之父,Linux之父等。(少于万分之一)
【各开发段位在开发世界的贡献】
初级程序员:陌生运用。
中级程序员:较熟运用。
高级程序员:熟练运用。
架构师:精通运用。
技术专家:小创造。
技术大神:大创造。
【开发者水平的判断位(适用于大公司)】-旧
初级程序员:会编写简单的功能模块
。
中级程序员:会编写简单的系统
。
高级程序员:会编写高质量的系统。
架构师:达到高级程序员水平外,对一个端的技术栈有深入研究
。例如后端开发,对开发语言和数据库底层技术都有深入研究。
技术总监:至少一个端达到架构师水平外,对前端和后端,公司的技术栈都有深入研究。
【不同级数开发者的发展过程】
(初级程序员)入行开始,分配工作,一般是开发某些功能,或者某些模块。
(中级程序员)功能模块开发多了之后,就可以组合成简单的系统。
(高级程序员)开发系统有一定经验后,就会追求高质量的系统。
(架构师)高质量的系统再提升,需要涉及到开发语言和相关技术(后端会涉及数据库)的特性。
(技术总监)这时候成了最有能力把握公司技术全局的人,提升为技术总监,需要对公司技术有深入的研究。
【面试级数】
1.专人人士参与的笔试+经验对答,实力考查+经验对答判断面试者水平
2.专业人士参与的经验对答,观察感觉+经验对答判断面试者水平
3.无专业人士参与的对答面试,观察感觉判断面试者水平
【一般面试思维】
第一步,笔试过关,侧重基础知识,适用于所有级数
第二步,对答过关,侧重经验细节,对应级数来提问
(依据项目经验和理解来定位“初中高架总”级数)
【工作和创业】
1.不断提升的级数,可以大幅提升工作收入和选择的公司待遇,也对创业起到一定帮助。
2.一般来说,中级水平创业者可以胜任开发创业项目。但高级水平创业者,会更加胜任。架构师水平创业者比高级好一些,但差别不会太大。
2.1.中级水平创业者,可以分辨初级,中级(同级),中级以上的水平。分辨高级水平和架构师水平不是太敏感。
2.2.高级水平创业者,可以分辨初级,中级,高级(同级),架构师的水平。
2.3.架构师水平创业者,可以分辨初级,中级,高级,架构师(同级)的水平。但和高级一样,都是达标开发高质量的系统,分辨能力都是分辨四个级别。
2.4.技术总监会在公司现有技术人员中,如初中高架四个级数,选择最合适的人,继续全面了解和研究公司所涉及的技术。由于公司规模有大有小,中级,高级,架构师都有可能成为技术总监。
3.创业过程中,开发水平是一个动态的变化过程,因此不是一成不变的。
【出题的影响因素】
1.专业知识规律
2.工作岗位属性
3.考官属性
【后端面试常考点】
1.SQL
2.算法
3.语言进阶知识,面向对象
4.岗位技能特性:有些侧重高并发,有些侧重Redis、Linux,有些侧重swoole
5.数据库缓存技术,如Redis
6.高并发解决方案和技能
7.安全性
【通用后端】
初级考功能,高级考性能。
后端通用技能:mysql,redis,linux,队列,集群
【后端语言排名(个人分析)】
1.node.js:更容易开发APP和小程序,侧重全栈开发
2.Python:更容易开发AI(近年大热),相对较有可能超越Java的市场份额
3.Java:传统,实力雄厚的主流语言,大公司后端主力
4.PHP:外包,尤其中小型外包喜欢使用的语言,优点是开发成本低一些
【有机会考的点】
框架原理和设计
语言进阶知识:开发的设计模式,其他(如PHP的魔术方法)
微服务架构
分布式设计:docker+k8s
安全防护:CSRF,XXS,防SQL注入
【开发年龄和水平】
从开发年限看水平,实际是测试成长速度
一个不断学习的程序员,可以不断推进每一个阶段,而每一个阶段,就会有不同比例的人停下来
一个可以持续不断提升的程序员合理发展水平
1-3年,初级/中级
3-5年,中级/高级
5-10年,高级/架构
10年+,架构/总监
【其他】
腾讯T3级别高级后端面试难点:
算法,PHP进阶知识OOP概念和运用,砸机,砸数据库,分布式管理docker+K8S
PHP进阶知识OOP概念和运用:魔术方法,列举和实际应用
最高阶:精通PHP,无懈可击的架构系统
- 高级工程师或以上级别的行为习惯
- Laravel封装
- 公用类
- 查询
- 项目1
- Laravel CMS
- 无限分级列表
- Laravel
- Laravel简介
- Laravel下载和安装
- 微服务
- Laravel身份认证
- Laravel Passport
- 后台身份验证
- Passport实现前后端登录认证
- Laravel Sanctum
- Laravel辅助
- Unitest
- Laravel常用命令行
- Laravel数据库配置
- Laravel连接数据库模板
- Laravel数据库操作
- Laravel路由
- Laravel操作
- Laravel Blade模板引擎
- Laravel CRUD (create, read, update, delete)
- Laravel实例
- Laravel Eloquent
- belongsTo和belongsToMany案例
- Laravel Package
- Laravel File Manager
- Laravel language
- Laravel查询
- Laravel合并查询
- Laravel统计
- Laravel Voyager Blog System
- Laravel Excel
- Laravel AsgardCms后台
- Laravel基础集合
- Laravel 备份和更新
- Laravel和Codeigniter对比
- Laravel事务处理
- Laravel Redis
- Laravel在Nginx服务器运行时遇到404错误的修正
- Laravel安全
- Laravel JWT
- Laravel Passport
- Laravel加密和解密
- Laravel sent email
- laravel 5.4 eloquent-relationships
- 加入变量文件
- Laravel migrations
- Laravel队列
- Laravel+RabbitMQ
- Laravel OSS
- CMS设计
- 角色权限设计
- Lumen
- Lumen API
- lumen email
- 服务器
- Cloud9使用
- 配置本地服务器多域名
- PHP运行环境部署方式
- 同时运行PHP、Java、Python
- Linux操作
- Composer
- 支付开发
- 微信支付
- 支付宝API
- PayPal开发
- PHP基础
- JavaScript相對PHP開發側重後臺功能的劣勢
- PHP foreach 和 for循环
- PHP检测数组有哪里连续的字符串,以及有多少个
- Session
- 域名判断显示
- 检测登录设备
- PHP foreach循环, 则只循环相同数据一次
- PHP计算搜索过程所用的时间
- PHP文件处理
- Session和cookie案例:登录时的记住我功能
- PHP array判斷
- PHP剔除数组中相同子元素的值
- PHP分页
- PHP "三元运算符"简写
- 防CSRF跨站请求伪造攻击
- PHP Json system
- crul
- PHP爬虫
- 参考
- PHP一和二维数组
- 格式转换
- PHP抓取网页指定内容
- PHP Simple HTML DOM Parser
- PHP提取多维数组指定一列的方法大全
- PHP将第一个字符转为指定内容
- OpenSSL加密解密
- 图片+文字
- PHP理论
- Opcache
- Git
- 安装Git
- Git操作
- Git参考
- 参考笔记
- 程序员接单平台
- 后端PHP面试
- 基础面试
- MySQL训练题
- 经典算法题
- 框架原理
- 高并发
- 微服务架构
- 安全性
- 分布式设计
- 服务器集群
- 模拟题目
- 模拟面试1
- 模拟面试2
- 网络协议
- 英文面试
- 高端PHP面试取胜点
- MVC設計
- 模板引擎
- 算法高效解题
- 算法概述
- leetcode算法题
- 排序
- SQL
- MySQL
- MySQL连接
- Join案例
- MySQL参考文章
- mysql_pdo_select
- mysql_pdo_insert
- MySQL索引
- MySQL事务
- MySQL将数据表字段不重复的值合成一个数组
- MySQL常用语句
- 备份
- MySQL other
- MsSQL
- MsSQL连接
- MySQL PDO连接
- MsSQL安裝
- mssql_pdo_select
- mssql_pdo_insert
- MySQL past
- MySql常用操作
- MySQL基础练习
- MySQL设计
- MySQL案例
- php array转换放入数据表
- PHP Mysql连接数据库并输出数据
- MySQL常用命令
- MySQL导出导入
- PDO
- Excel
- Excel在Drupal的应用
- Excel在Laravel的应用
- PHPOffice/PhpSpreadsheet的基本使用
- 用PHP Simple HTML DOM Parser获取指定列的内容
- PHPOffice/PhpSpreadsheet的案例
- Sublime Text
- elasticsearch
- 后端基础核心:数据的输入和输出
- 发送邮件功能
- PHPMailer发送邮件功能源码
- PHPMailer发送邮件功能源码(详细案例)
- 常用cnd链接
- API
- API ajax+php demo
- PHP Postman API
- API1
- demo-api
- Google API
- google sheet data insert into database
- Laravel API
- Google Analytics
- 其他工具
- 经验
- 编程注意事项
- 开发语言的差别
- 软件产品
- 经验之谈
- test
- Bootstrap 4
- 1.demo page
- CMS設計
- 编辑器
- Other