- 我是一个线程(修订版)
- 我是一个 Java class
- Javascript:一个屌丝的逆袭
- Java : 一个帝国的诞生
- JSP 一个装配工的没落
- TCP/IP 之 大明王朝邮差
- TCP/IP 之大明内阁
- TCP/IP 之蓟辽督师
- CPU 阿甘
- CPU 阿甘之烦恼
- CPU 阿甘:函数调用的秘密
- 我是一个网卡
- 我是一个路由器
- 我是一个进程
- 我是一块硬盘(上)
- 我是一块硬盘(下)
- 我是一个键盘
- 张大胖的 socket
- 张大胖学递归
- 学习面向对象的令狐冲
- 张大胖学数据库
- 数据库村的旺财和小强
- 小李的数据库之旅(上)
- 小李的数据库之旅(下)
- 漫画:什么是机器学习?
- 那些烦人的同步和互斥问题
- IE 为什么把火狐和 Chrome 给打伤了?
- 对浏览器村的第二次采访
- 节约标兵 IE 的自述
- EMail 诞生记
- Email 诞生记(下)
- Http 历险记(上)
- Http 历险记(下)-- Struts 的秘密
- 动物王国的面向对象
- 冯·诺伊曼计算机的诞生
- Http Server : 一个差生的逆袭
- 张大胖的加法器
- 从 1 加到 100:一道简单的数学题挑战下你的大脑
- 编程语言
- Javascript:一个屌丝的逆袭
- 计算机语言之战
- 我和编程语言的爱恨情仇(上)
- 我和编程语言的爱恨情仇(下)
- Android 为什么选择了 Java
- iOS 为什么选择了 Object-C?
- Basic : 一个老兵的自述
- Node.js : 我只需要一个店小二
- 命令式编程 vs 声明式编程
- 编译还是解释?
- 程序人生
- “架构师"小赵
- 师兄说
- 师姐说
- 小王的架构师之路
- 小李的版本管理系统
- 小超穿越记
- 小李的 Build 之路(上)
- 小李的 Build 之路(下)
- 张大胖改 Bug
- 我的编程之路--大学趣事
- 码农小王的一天
- 小李在外企
- 张大胖的需求估算
- 从厨师到码农
- 聊一聊那些神一样的程序员们(上)
- 聊一聊那些神一样的程序员们(中)
- 聊一聊那些神一样的程序员们(下)
- 谁是互联网之父?
- 一个价值百万的创业教训
- 让自己与众不同 - 提升工作的价值
- 看看你的“易燃性”
- 从无聊的工作中寻找价值
- 什么样的学生适合报考计算机?
- 谈谈程序员的职业方向(上)
- 谈谈程序员的职业方向(中)
- 谈谈程序员的职业方向(下)
- 谈谈培训班的作用
- 码农需要知道的“潜规则”
- 学习编程的加速度
- 码农在工作中的必备能力
- 码农和英语
- 老司机经验
- 假如时光能够倒流, 我会这么学习 Java
- 假如我是计算机系老师
- 学会编程, 而不是学会 Java
- 从增删改查中突围
- 抽象:程序员必备的能力
- 懒就一个字
- 编程的自学方法
- 小王买房记
- 从一道面试题谈谈一线码农应该具备的基本素质
- 想写框架的看过来
- 苹果手机变砖头以后
- 如何快速的学习一门技术?
- 唯一不变的是变化: 谈谈微信应用号
- 什么是企业应用?
- 勿以浮沙筑高台
- 为什么敏捷开发难于成功?
- localhost vs 127.0.0.1
- GitHub/Stackoverflow 找工作时有什么用?
- 动词 or 名词 :这是一个问题
- 如何选择入行语言
- 有时候,沉默是金
- 零 Bug 的代码是怎么炼成的?
- 浮点数为什么不精确?
- 文章错误大全
- Open Source--不要为了开源而开源
- 一不留神,代码就腐化了
- 先做个“键盘侠”, 再来写程序
- 不加断点调试的程序员是好程序员
- 码农必备技能:烂代码的处理之道(上)
- 码农必备技能:烂代码的处理之道(下)
- 学习数据结构有用吗?
- 从现在开始,丰富你的简历
- 那些永不过时的书,你看过几本吗?
- 学好编程必备的一个品质你知道吗?
- 你最爱的 Java
- 搞懂了这几点,你就学会了 Web 编程
- Spring 的本质系列(1) -- 依赖注入
- Spring 本质系列(2)-AOP
- 三层架构和 MVC 那点事儿
- Java 帝国之拨云见日识回调
- 小张的 Duck Typing
- JDBC 的诞生
- JDBC 后传
- 一个不安分的 JDBC 驱动
- Java 帝国之 Java bean (上)
- Java 帝国之 Java bean(下)
- Java 帝国之函数式编程
- Java 帝国之函数式编程(下)
- 关于 Java 初学者需要知道的 10 件事
- JUnit 你不知道的那些事儿
- 圣诞礼物:Java EE 的历史
- Java EE 读书指南
- 给小白的 Java EE 指南
- 给小白的 Java EE 指南(2)
- 给小白的 Java EE 生存指南(3) : XML
- 给小白的 Java EE 生存指南(4) : 一只叫 Tom 的猫
- 给小白的 Java EE 指南(5) : AJAX
- 给小白的 Java EE 生存指南(6) :Java 反射
- 闲聊
- "饿了么"初体验
- 来自大脑的控诉
- 一个高中生是怎么玩自媒体的?
- 尝试 分答
- 到底应不应该上培训班?
- 自学编程中遇到问题怎么办?
- 据说 99%的初级程序员看完后都不迷茫了
- 一行代码引发的“血案”
- 对一个死锁问题的思考
- 通过外包进入名企
- 请开往十年前的今天
- 为什么自学中最好有个师傅指导一下?
- 这个网站值得你花时间投入
- 为什么你无法坚持自学编程?
小李在外企
1 小李所在的公司经营不善, 换了个 CEO, 新的 CEO 曾经任职于某知名外企, 上任后急于重振雄风,不断就给大家打气, 在一次员工大会对大家说:
“我们虽然是个小公司,但是灵活,效率高,船小好调头啊, 我在外企的时候,公司虽然很有实力,但是机构臃肿,决策复杂, 有一次有个东西需要审批, 要层层的盖章, 你们猜猜需要盖多少次章? ”
“五次, 八次, 十次... ” 大家都没猜中,最终 CEO 揭开了谜底:
“整整 28 次!”
小李被惊到了, 什么事情需要 28 次的审批才能通过, 这样的效率该有多低? 这不可能吧?
提到外企,小李脑海中全是光鲜亮丽的白领形象, 心向往之。
过了两年, 小李在机缘巧合之下也进入了这家外企, 呆了几年也没有见过需要审批 28 次的情景, 小李想这要么是个非常罕见的个例, 要么就是自己级别太低,无缘相见。
但是审批的确无处不在, 刚进项目组的时候, 为了把自己的开发环境搭建起来, 小李的师傅指导着他可真是忙活了很久啊。
虽然公司的日常 OA 账号在入职的时候已经创建了,接下来要还得申请巨多的账号, 特别是这些账号的申请流程还都挺复杂, 所以前辈们把申请过程仔细的记录了下来,存放在一个文档数据库里,方便后人查阅。
可是令人想不到是, 这个文档数据的的访问权限也需要申请 !
小李算了算, 这些需要申请的账号包括: 数据库账号(开发库,两个测试库), 源代码访问账号, 文档库账号, 应用服务器账号,应用服务器控制台访问账号, Bug 系统账号, 生产系统支持账号 服务器维护系统账号, 这些统统需要审批, 甚至是测试系统内为了获取某个角色,也需要特定人的审批, 一句话,你能想到的账号几乎没有不需要审批的。
如果中国人审批还好, 如果是需要国外的审批, 那至少得等一天 -- 因为有时区问题。
小李花了近一周的时间,这些账号才陆陆续续的弄好。
小李经常想,这些审批真的是需要的吗? 2 正式的开发工作展开了, 小李发现,之前的审批完全是毛毛雨, 跨地域,跨时区的协作才是大问题!
小李也看过一些全球化协作的文章,听起来很美好: 中国人白天干, 下班前提交代码, 晚上美国人能接着干, 24 小时轮流转。
但实际情况呢? 小李团队的需求主要在美国提出, 开发分散在美国,印度,中国, 项目管理在欧洲展开。
小李的工作有一些和美国团队有接口的交互, 这一天小李遇到了一个问题, 可是白天没人能回答, 只好发个邮件出去,等待回复。
第二天一上班,小李就兴冲冲的打开邮箱,心想着今天可以继续开工了。
可是邮箱里空空如也,没有任何新邮件, 可能是美国同事太忙, 忘了回复了吧, 小李又追发了一封信,还特意把优先级置为“紧急”。
第三天, 回复果然到了, 悲催的是这位美国同事没有读懂自己的问题(可能是英文太差,没有描述清楚), 回答的驴唇不对马嘴。
小李还想再发邮件,被师傅制止了, 师傅说: “小李, 这样下去太浪费时间了, 你晚上 9 点上线直接去找这个美国同事,在线沟通吧”
从此以后, 晚上自主加班,上线和老美交流需求和接口变成了一种习惯, 每天晚上不上线的话总觉得有什么事情没有做完, 浑身不自在!
小李经常会怀念原来公司, 有什么问题直接跑去一问就行, 面对面沟通,效率极高, 小公司就有这样的好处。
唉,在同一个地方办公是多么重要啊。 3 随之时间的推移, 小李慢慢适应了这里的流程, 学会了用各种各样的流程工具去完成工作。
如果数据库表需要改动, 就要按照流程在系统中给 DBA 开一个 ticket(意思是说这里有个事需要你去做, 给你发个通知单), DBA 看到以后(只是不知道他什么时候能看到), 就会去处理, 把处理的结果放到同一个 ticket 中。
想修改一下应用服务器的配置, 到另外一个系统中开 ticket, 管理服务器的人自然会去处理。
想部署新功能,开 ticket, 想查看生产环境的数据, 还是开 ticket, 这家公司的流程极为完善,令人叹为观止。
这些流程就像一张大网, 把每个人紧紧的包围起来, 只要按照流程办事, 基本不会出错。
自己的项目按部就班的开发, 每年按计划发布那么 2-3 次, 只是最近发布时感觉有些不爽。
按照公司规定, 对于生产环境开发人员是没法去碰的,只能由运维人员来处理,之前项目有个固定的美国运维小哥, 对项目非常熟悉,部署是驾轻就熟。 后来公司为了节省成本, 采用了一个“运维人员池”的形式, 这一次是墨西哥的运维来部署, 下一次可能就换成了阿根廷人。 公司是节省了成本, 可是每次都是新人, 对项目了解太少, 偏偏自己的项目部署是又异常复杂, 手工操作特别多,每次都得费劲口舌给这些新人重复的解释部署过程, 即便如此,还是时不时的出错, 让人崩溃。
小李提了好几次自动化部署, 并且已经在测试环境实现了, 确实能极大的降低工作量和出错的可能, 但是生产环境的运维就像一个独立的王国, 水泼不进,针扎不进, 一直我行我素。
由于涉及到跨组织的协调,不但是小李, 就连小李的经理都没法办法,只有期待着哪一天公司组织的变革了。
4 小李慢慢的发现,自己每天真正的工作时间越来越少, 时间都被会议给占据了, 好像所有的事情都得由开会来决定。
每周有三次需求沟通会,两次项目进度汇报(一次是全球的,一次是中国的), 一次开发人员沟通会。 还有不确定时间的技术分享会议, 专利想法讨论会, 更不用说参加了社团以后各种各样的会议了。 后来采用敏捷软件开发,每天还有 15 分钟的站会, 可惜的是只是学了个形式,没有学会真正的神韵。
会议白天有, 晚上也有, 小李感觉每天的工作都是被会议所驱动。
会议室成了公司最热门的资源, 为此公司还特别开发了一套会议室预定系统, 每月开始的时候, 大家都需要去抢会议室。
会议如此之多, 有时候为了防止冲突,协调与会人的时间, 一个会议的时间被迫不断调整。
如果你听说专门开个会来讨论什么时候才有时间开会 也不用感到惊奇了。 5 这些审批,流程,会议还不算什么, 最让小李觉得不爽的是自己的技术能力没有办法充分的施展。
自己所负责的是一个非常古老的遗留应用,上个世纪写成的,技术成熟,框架成熟(恩, 其实是前辈们自己写的非常简陋的框架)。
现在每次升级,每次都是小打小闹的根据业务改一点点,完全没有机会去设计一个稍微大点儿的东西, 没有办法展示自己的设计能力。
小李有点担心,现在技术发展这么快, 虽然自己也在跟进, 但是没有机会去在项目中实践,在这里长久待下去, 一直吃老本, 技术可能要废掉啊。 后记: 外企虽然有很多让人不爽的地方, 但也有很多优点
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论