PHP,求职了,广州的有没有

豆浆Melon 发布于 2013/08/20 23:36
阅读 939
收藏 1

想跳槽的原因:在游戏公司,身处大坑中,拍脑袋式的需求变更,无休止的加班
学历:高中
工作经验:PHP刚好20个月,加送2年打厂工经验,工作差不多4年
地点:广州,可以考虑周边
求职期望:6K以上,向往有良好软件工程质量管理的公司,不会发生拍脑袋式需求变更,不为赶进度而加班,技术人员有说话的权利,双休
由于工作内容基本都不是对外的,但可以通过博客大概了解一下我,虽然文章不多,还是能看一下:
http://my.oschina.net/u/867608


简短自我评价:

基本懂Javascript,ECMAScript比较核心的闭包,原型,和原型链的工作方式都懂,完全用原生写是没有问题的,写个Jquery插件也可以,能顶半个前端。但当然希望公司能有自己的前端。

基本懂PHP,太高深的不会,比如底层c代码的工作原理。能应对常见的设计模式、MVC、ActiveRcord、AOP等,不过我是不赞成用PHP使用过多的模式来构建程序,这门语言的本质是简单直接,能够让我不用纠结在代码的泥潭,而专注业务逻辑的思考。

熟悉Linux服务器的常用命令操作,有写过SHELL,基础知识都是在《鸟哥的私房菜》上学来的

熟悉正则的工作原理,比如回溯,匹配优先和占有优先等,也知道DFA和NFA引擎之间的一些差别。我觉得正则表达式也是一门比较重要的技能,因为做PHP大部分时间都是和字符串打交道,有专门学习过,在实际的工作中正则也对我帮助很大。

在软件构建方面,重构也是我经常使用的技能,对单元测试、面向接口编程、松耦合、伪代码等有一定认识。



第一家公司做OA产品的研发,PHP + MYSQL,服务器线上使用WIMP

虽说是做OA,但实际上我大部分时间在和DISCUZ论坛打交道,因为OA系统整合了很多DISCUZ的功能:帖子、家园、积分等,都是对这些功能的二次开发,所以我对DISCUZ的工作原理可以说是非常熟悉,缓存系统、通知机制、国际化、插件等等。在这里我只能说一些开发中DISCUZ让我学到的一些知识:

1、缓存系统是DZ的核心,主要由三部分组成:数据库、文件、第三方扩展(比如memcache)。

文件和第三方扩展实际上是基于数据库中的缓存的,缓存最后都会保存在数据表中,需要的时候在数据库读取出来,然后放到文件或者内存中,下次直接在文件或者内存中读取。这样最大的好处是服务器停止了,缓存还会在,因为是保存在数据库中。DISCUZ缓存的内容是非常多的,包括语言包、导航信息、用户组信息、家园配置等等,有十几个脚本专门用来生成缓存。

2、模板解释引擎,DISCUZ的模板解释引擎比较简单,只有一个类,主要使用正则来替换标签。比较有特色的功能是:
2.1、CSS压缩,DZ绝大部分的CSS都写在一个文件下(common.css),用特殊标记标识每个模块的CSS段,解释模板的时候,根据模块取出相应CSS段,压缩并生成缓存文件,这样写在一个CSS文件下的维护性非常好。

2.2、钩子,通过模板标签在模板中标记出钩子,解释模板的时候,找到钩子对应的ID,在缓存中取出数据(DZ开始运行的时候就会执行当前模块的钩子函数,生成结果保存在缓存中)

3、帖子分表:原理很简单,建立一个主表,多个分表。主表记录每条数据的ID,实际数据存放在每个分表中,通过主表找数据。

还有太多就不详细说,如果有机会,我们可以面试的时候谈谈。

另外还有开发几个OA的功能:
日历,主要是仿GOOGLE日历,程序大部分使用Javascript编写
个人文件柜,程序大部分使用Javascript编写,类似windows的资源管理器,可以随意建立文件夹、移动、共享文件,还有回收站功能
简历一键分析,能够解释简历的内容。原理是设置简历的一些常见关键字,用正则匹配关键字对应的信息,根据关键字位置和周边信息来评估权重,权重最大的准确性最高,最后会被返回。



第二家,也就是目前在职的公司,台湾手机游戏代理商,PHP + MYSQL,服务器线上使用LNMP。
在这里我的工作是做游戏串接 - 游戏和公司平台的接入,目的是统一用户管理,跟踪广告收益渠道,还有储值接入和一些用于数据挖掘的程序。
基本都是和接口打交道:游戏公司提供的服务器接口;Google、Facebook、Twitter的OAUTH接入,Facebook应用程序中心接入;以及Google billing、Iap储 值接入等等。

目前团队正在开了安卓和IOS版本的SDK接口 - 实现用户接入和储值功能,提供给代理游戏接入。后台用PHP,我做PHP主程,实际开发是比较简单的,毕竟只有用户接入和储值,游戏业务重要的是数据统计和日志管理。

数据:针对数据做记录接口,数据记录接口就是记录下用户注册来源渠道,设备信息,登入流水等。如何挖掘和处理才是重点,不过这不属于 我的工作范围。
日志管理:针对程序的关键部分做日志,比如储值、异常错误,因为有敏感信息,都是加密保存到服务器文件中。为了方便查看日志,我编写了SHELL脚本结合PHP来解释输出日志。


联系方式

QQ: 397574898
邮箱:397574898@qq.com

感谢

加载中
0
ueharaai
ueharaai
20个月的php工作经历,没别的编程经历?看了lz的东西大概最得意的是正则表达式吧。如果甩开php自带的正则表达式,照着php手册自己用php实现一个,lz能做到吗?
ueharaai
ueharaai
回复 @豆浆油条 : 难点在哪,说说。
豆浆Melon
豆浆Melon
这个没试过,我觉得回溯和环视,即零宽断言 这两部分实现起来比较难
0
mrz
mrz

支持

看得出楼主是个很勤勉的人

豆浆Melon
豆浆Melon
回复 @mrz : 看来大神都在OSC潜水啊
mrz
mrz
回复 @豆浆油条 : 。。。我比你还早的好吗
豆浆Melon
豆浆Melon
我擦,你什么时候混进来了
0
松鼠先生
松鼠先生
赶脚很厉害的样纸
0
鲨鱼哥
鲨鱼哥
高中学历,就直接学习的PHP?没有学过基础的计算机课程?
豆浆Melon
豆浆Melon
现在想起就辛酸哈哈
豆浆Melon
豆浆Melon
高中时期就喜欢IT行业,塞班时代天天玩手机,后来自己学习帮人装电脑,已经装了几十台了,然后回家自学PHP
0
豆浆Melon
豆浆Melon

引用来自“ueharaai”的答案

20个月的php工作经历,没别的编程经历?看了lz的东西大概最得意的是正则表达式吧。如果甩开php自带的正则表达式,照着php手册自己用php实现一个,lz能做到吗?
匹配优先的问题,简单的例子比如说匹配abcdefg, .*efg产生了3次回溯,这个比较简单。
但如果遇到复杂的组合情况,比如(?<=a).*((?<=c)d.*(?=f)) ,类似这样的表达式,有多次回溯,回溯时加上环视。
逻辑上把组合拆分比较容易处理,如(?<=a).*和((?<=c)d.*(?=f))看成两个独立部分,但这只是例子,需要抽象为一个整体问题,实际使用程序分析它时我觉得很困难,没操作过。
如果零宽断言允许不定长度,处理起来可能更复杂。

话说回来,请问你是招聘吗?

豆浆Melon
豆浆Melon
回复 @ueharaai : 那个没有看过哦
ueharaai
ueharaai
抱歉问得太难了,正则是我的弱项,所以一直想补一补这方面的内容,这个博客你看过吗?http://blog.csdn.net/lxcnn
0
Esnce
Esnce
最近初试php,看到论坛上不少人提到“20个月”这个词,不太明白,难道php有稳定的升级教程? 求科普
豆浆Melon
豆浆Melon
一般都说整数,20个月,如果是你,要说一年半还是两年经验呢
0
mahone
mahone
lz很nb。。。薪水可以要求10k
0
夏涌升
夏涌升
我的水平很可能不如你,就工作时间(php)比你长一点。。。你有这水平,工资要低了
0
豆浆Melon
豆浆Melon

引用来自“夏涌升”的答案

我的水平很可能不如你,就工作时间(php)比你长一点。。。你有这水平,工资要低了
感谢
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部