说实话,要啥都不会还想干技术?公司你家开的?或者你爸是杭州马、深圳腾?洗洗睡吧。
但是要是如果是洗心革面准备踏入现在内卷严重的“动(cheng)物(xu)园”,决心开始做一只“猿”,那我倒是可以给一些建议,毕竟想要饿不死,办法总比困难多。
基础和技术才是硬道理
PHP这个岗位演变了这么多年,说心里话,“内卷”是相当严重,严重的点不是在于技术有多大变革,而是技术从早年懂点理论有人带,变成了前端+后端+数据库+服务器全栈八千还有点欠缺。毕竟进入岗位后,管你老板吹的多天花乱坠,还不是给我拧螺丝,唯独的区别是你拧的这颗螺丝重不重要罢了。骚的是,大厂航母个个萝卜坑,小公司渔船都是板,哪来这么多螺丝?
言归正传,管它怎么卷,也抛开市场和公司,具备以下技术点,还是有饭吃滴。
一家不温不火但是能按时给你发工资的企业,基本上需要的程序员都是解决客户与业务的问题,这类业务的公司,客户量不会特别大,并发不会特别高,唯独恶心的是客户那拍脑袋的需求。
其实只要把握好这些点,基本上已经达到8K的标准了,当然可能10年前8K只要听说就可以了。话不多说,细节就听我一一道来。
增删改查
这东西没啥难的,基本上任何语言都需要该功底,像PHP这语言,无非就是Select、Update、Create、Delect。不过一般删除都是用数据库类似status
字段并且值设置成0(删除)、1(正常)来控制。
MySQL
8K的月薪,估计要求你能做到DBA的标准也不现实,只要能设计一下表格,基本的SQL语句查询没有问题,就基本上差不多了,别谈什么性能、锁、索引啥的,8K!!!要么你接触不到,要么用不到,面试公司要是一个房租都快付不起,然后公司规模就那么两个人融资遥遥无期的公司跟你聊千万表查询和优化,那估计这就是以后你跟别人吹牛逼的梗了。
Redis
为啥我突然冒出一个非关系性数据库?这东西能用在哪?小公司用这个?那我问一下哈,Session、Cookie搞得清楚么?如果搞不清楚,是不是直接把用户ID和登录态以Key-Value并加过期时间存储是否更加便捷?品、细品、细细的品。
吹牛逼
真心别吹牛逼,特别是面试的时候,我面试的时候遇到很多人,不是说自己这个可以那个行的,我是真的给你一套题?还是给你上机上代码?如果此行目的只为了8K,踏实点,毕竟能面试你的人(除非不是技术),都是走过你这个阶段的,几斤几两他心里都有数,与其说是面试,还不如说看你顺不顺眼(关系户除外)。
Nginx
代码部署、上线,域名指向这些总得会一些吧,万一面试的公司,你就是技术独苗。那你起码得懂上线代码,难不成内网地址一直耍么?
女人
心中无女人,拔刀自然神。
接口文档
现在的业务基本上都是前后端分离进行开发的模式,所以很多时候除了把后台增删改查、报表、权限等模块写好,基本上都是接口跟前端对接。啥是接口?简单的说就是,前端程序猿请求你给的一个HTTPS地址,并且带上请求头和参数,然后你拿到参数巴拉巴拉做一些逻辑然后请求三方服务在写入数据库,把运算的结果约定好,返回给他们想要的参数。
Linux
服务器基本的操作得懂吧,常见的命令rm、cd、cp、vi等这类的,虽然不是深究这东西的,就好比你windows不知道怎么打开文档、复制、删除那你能使用电脑看岛国的精髓么?
代码版本管理
老码农时代用的都是SVN,现在都用Git进行管理了,也不需要啥,基本上懂git clone、git fetch -vp、git reset --hard这三条命令就能苟延残喘了,至于别的命令,廖雪峰大神了解一下。
跟需求方撕逼
这个就比较复杂了,可能你的需求方是产品、客服、财务、公司客户、甚至是拍脑袋的老板。他们做事不会问你可不可行,也不在意难不难实现,就关心啥时候上线,良心点的还给你评估时间,黑心脑瘫的上一秒要什么跟你巴拉巴拉乱说一通后下一秒一句应该“很简单的,明天可以好么?”。时候你只想拿刀捅死他。不过撕逼归撕逼,好好理解需求是很有必要的,毕竟事倍功半和事半功倍的区别。
敢说敢想敢尝试
虽然我不可能代表行业,我也只是分享我作为企业负责人的角度,去阐述我遇到的面试者。
有一类是毫无自信心,觉得自己其实可以,但是在面试的时候说话就很唯唯诺诺,嗯哼?!请问你在怕什么?我是饕餮么?贝爷?一言不合吃了你?
能不能别这么怂,大胆点。毕竟面试其实就是展现你有什么能力的一面,我看到你这样毫无自信,你在代码中如何大胆的去解决问题?难倒系统出了问题,你因为担心承担损失,就不敢下手了?
其次就是不善于表达自己内心的想法,也不喜欢沟通!之前遇到一个面试者,整个过程十分钟,就姓名、祖籍,然后就嗯嗯啊啊。
到底谁面试谁?你不说话你来干嘛?来参观么?
这种基本上最多十分钟,我直接送客了。浪费彼此时间么?你去一家公司面试,路程来回在大城市少说一个小时,多的都两个三个小时,就来这里嗯嗯啊啊?怎么了?得了说话多就会死的病么?你这都不愿意表露自己,到工作中我能知道你想什么?需求和工作内容安排你能不能理解你都不告诉我,这样的人我要来干嘛?
还有一种是不踏实的人,面试通过office到手,听从了前辈和网上的各种说法,“你要看自己值多少钱,就得多拿几个office,到时候就是你选公司不是公司选你了”。理论没错,但是实际上呢?!
我之前给了一个参加面试的人office,应届专科,没有项目经验,但是有一定的技术功底,基本上我猜测也就是if和增删改查,但是因为正好手上缺人,我就8K要了他。刚好是国庆,面试的时候是节前几天,他希望节后入职,我说没问题。他转身去面试了一家Python,对方许诺了给他office,后来我才知道,人家只是说没问题跟人事商量一下发office,结果他就发我一段“XXX,我其实专业和爱好还是Python,但是面试的时候是没有选择,刚好贵司找了我,我就参与了面试,所以我也正好符合你们的要求,但是因为今天面试的岗位是Python,所以抱歉我这边就不参与你们的公司了,望贵司能找到更合适的人选”。
OK,我也没在意,继续物色人选了,谁知道国庆结束后的前一天,他给我发消息了,请问我明天是过去入职么?并且说了一句“原来有一种谎言是,我会给你发office!”。我其实当时没有新人选,但是我还是直接回复“不好意思,我们已经有合适的人选了,谢谢”。
两个点吧,一、是我给他上了一课,世界上没有后悔药。二、就这见风使舵的能力,在我手上我尽心尽力培养,遇到合适的机会,你还是会义无反顾丢下我们团队。
衷心与踏实远比实力更重要。
另外一种埋的比较深,就是嘴巴比手勤快的,那就是面试的时候前期准备工作做的非常到位,比拉吧啦一顿说,因为面试发现自己准备的恰好是面试官问到的,所以越来越自信,疯狂嘟嘟嘟。拿到office后进入到岗位,提出很多解决思路,但是自己不去尝试,每次都需要同事的帮助解决问题,请问?你来当吉祥物么?遇到问题都选择避开。啥都问你行不行,为啥不主动去试试,我是你的BOSS没错,但是我也不是维基百科啊,我神仙么?不去亲测能告诉你结果?
很多事情,岗位职责分工之后,麻烦自己动手去看看问题的背后会是什么结果,回想一下读书的时候老师会直接教你答案么?
最后一种,是口头禅,“应该、我以为、可能”。是就是,不是就不是,这些是什么意思?代码里面你见过bool里面除了true和false还有别的么?
特别是在出现问题后确认问题点的时候,给我来一句应该、我以为,我真的是火大。
很多bug基本上都是应该发生的,比如:这个判断我以为?以为?以为是严谨的逻辑思路么?或者让他们跟进一下第三方的审核进度,来一句对方可能看了吧。可能?那是看了还是没看?
说实话,比起前面的,我觉得最后这类人群,才是让公司最抵触的人,毫无责任心,还没有从一个孩子进化成成年人,还不理解责任感这三个字。
上面其实都是废话,这里才是干货
这里给大家分享同时贴上开源的代码与傻瓜教程,让啥都没有的你,看到这已经可以基本上撑起一个毛都没有的公司1.0系统。
咱们聊聊服务器怎么安装吧?阿里云买,然后选Ubuntu,选别的那就自己找教程去。进去 这个地址,按照流程来,错了就格式化再来。
https://github.com/summerblue/laravel-ubuntu-init
地址是一键部署,简介中提到适用于 Ubuntu 16.04 / 18.04 / 20.04 的 LNMP 安装脚本,并设置了国内镜像加速。
像Git、MySQL、PHP、Composer、Nginx等都给你安装好了,很省事。
安装好了之后呢,有钱的用RDS,没钱的用服务器本身的MySQL,这是一键部署的,除了卡点,用起来问题不大,下面就到代码环节了。
首先我用PHP基于lumen,号称为速度而生的 Laravel 框架,结合了前端Bootstrap框架,搭建了一套商用后台系统,MVC+Service同时编辑了自动生成一套增删改查的代码生成器,只需要把MySQL的表格设计好,并且.env配置文件中DB配置,就可以自动带出一套页面文件。
权限、菜单、登录、日志的基本业务都已经完成了,只需要在上面编辑和开发业务模块就可以了。
Github开源地址:https://github.com/ailezai/lumenSeedProject.git
首先将域名指向服务器,服务器上需要配置conf,配置目录在/etc/nginx/sites-available,需要软链到/etc/nginx/sites-enabled目录下,域名指向/var/www/项目名称/public,然后执行service nginx restart重启服务器。
Admin前端样式参考地址:http://www.inspinia.net/dashboard_2.html
样式地址如果过期可以百度搜索inspinia来查找。
项目部署如果不清楚的,可以后续加我个人微信公众号进行沟通。不会很正常,不问就我也不知道你不懂,反正我人就在那,问与不问随你心意。