More Related Content
Similar to Geo science cafe 如何找到一份满意的工作
Similar to Geo science cafe 如何找到一份满意的工作 (20)
Geo science cafe 如何找到一份满意的工作
- 1. GeoScience Café
如何找到一份满意的工作
--记2011拿到腾讯Offer心路历程
报告人:kekec
时间:2012年1月6日
武汉大学测绘遥感信息工程国家重点实验室
- 6. 腾讯招聘流程
• 招聘岗位
– 技术类
后台开发、客户端开发、运营开发、游戏开发、终端开发、
搜索开发、测试开发、应用开发、WEB前台、网络安全、网
页重构
– 业务类
产品策划/运营、游戏策划/运营、营销/销售/战略
– 设计类
交互设计/用户研究、美术设计/视觉设计、游戏美术设计
– 职能类
人力资源专员、行政综合管理专员、财务专员
更多详细信息可访问:http://join.qq.com
- 8. 好代码的特征(1)
• 稳定可靠
– 错误处理(返回值、使用异常)
– 时空开销对输入不敏感
• 易用阅读和修改
– 有意义的命名
– 写真正有用的注释
– 设计符合自然法则和人们思维习惯
– 短小简洁(函数、类、模块设计粒度)
• 可测试性
– 分层设计,防止交叉调用
– 模块之间通过接口调用
– 编写测试代码(通过宏来控制是否执行测试)
- 9. 好代码的特征(2)
• 可复用,可扩展
– 每个函数只做一件事情,赋予每一个类正确职责
– 无逻辑相似或接近的代码(DRY)
– 插件式架构设计
– 接口和实现解耦
– 程序和数据解耦
• 可移植性
– 使用自定义数据类型
– 依赖的函数库
• 高性能
算法复杂度: O(n!)> O(2n)>O(n2)>O(nlog2n)>O(n)>O(log2n)>O(1)
• 安全
- 10. 硬件发展
• 单核 – 多核(SMP) – 集群(Clusters)
• CPU – GPU协同
• 海量内存
• RAID存储阵列
• 终端:无线、移动
• 高速光纤网(终端:1Gbps)
- 11. 程序设计发展
• 面向过程 – 面向对象
• 静态语言 – 动态语言
• 命令式编程 – 函数式编程
• 模板编程、元编程
• 模块化/插件化
• 并行化(OpenMP/Intel TBB)
单线程 – 多线程 – 多进程 – 多系统
• 32bit – 64bit
• 语言间互操作
• 动态脚本
- 12. 工具、软件、系统、平台(1)
• 工具(Tool)
– 功能单一【exe】
– 高效易用
• 软件(Software)
– 单机程序,有模块划分【exe+dll+数据】
– 通过文件与外界进行数据交换
– 有稳定的内存模型
– 插件式架构,支持二次开发
- 13. 工具、软件、系统、平台(2)
• 系统(System)
– 多个软件协同运作,数据交换遵循标准协议
– 分为服务端和客户端,有负载均衡机制
– 数据放在服务器上、可共享、有容灾机制、支持并发访问
– 权限管理,自动更新
• 平台(Platform)
– OS – 云
– API
– 互联网海量资源
– 接口、服务标准化
– 易于分享
- 17. 一些建议
• 关注Google、Microsoft、腾讯、淘宝、百度等知名公司
的招聘动态
• 分享知识,坚持写技术博客
• 学好英文、数学、计算机和专业课
• 使用Google、Wikipedia来获取权威资料
• 学习和使用开源代码(SourceForge、Google Code)
• 若时间、精力允许,参加ACM或其他计算机编程相关的
活动
• 用编码解决日常中的重复性工作
• 生活在团队之中(独挡一面 – Leader – 创业)
• 关注学科领域前沿动态(学术界/工业界)