Skip to main content

微软感受 (转)

------------------
在微软两个月了,也可以说一说自己的感受了。我不会骂微软,然而我并不觉得它是可
以发挥自己才能的地方。我觉得我在浪费自己的生命。

在微软的感觉,总的说来其实是烦和累。按理说在这样稳定的大公司,工作时间不应该
超过6点(甚至5点),然而我经常看到有人7,8点还在办公室忙乎。当然,没有人明确
要求我必须待在那里,然而看到那么多人7,8点都还在,包括大小两个 manager,我会
担心自己如果每天按时6点下班,会有什么后果。从来没有队友对我轻松的说:“今天
星期五呢,你不该待这么久的,该回家啦!” 相反,我会在星期五下午5点还收到这样
的 email,说:“PM还在等着测试结果呢,你能不能再加把劲,重装下系统,跑这些测
试?”

在这两个月以来,可以说我做出了应有的努力去融入自己的团队,去理解自己所在的项
目,掌握自己所需要的工具,做得非常好了。当然,也没少偷偷加班,琢磨一些东西。
然而两个月以来,我越来越感觉到这个公司气氛的封闭和压抑。我发现自己所做的事情
,被局限于修补别人遗留下来的 bug 这种毫无趣味的工作,这跟当年在 Coverity 做
的事情没有很大区别。我并没有感觉自己是在被引入到更加重要,有趣,可以发挥自己
才能的任务,而是被故意圈在一个小地方。

微软在招我的时候,努力的压低工资和职称,比我之前的职称还低,跟我说什么“小公
司的职称不算数”。被我断然拒绝,然后不得不给我加了工资,改口说那职称是“为了
我好”。到现在我逐渐感觉到,他们确实没有考虑过我将来的发展,试图把我压在比较
低的位置。根据两个月以来我跟各种级别人士的交流和切磋,我在微软的职位应该至少
是 Principle Engineer。我可以暂时委屈一下,然而我却没有看到任何成长的希望。
我对职称,薪水和所做的事情,都相当的不满意。由于这职称跟我的水平相差太多,我
都不好意思把微软的工作列在我的 Linkedin 上面。

Windows 并没比以前质量好很多,几乎每天都要重启才能解决某些问题。内部工具(包
括 Visual Studio 和各种 Powershell 脚本)也经常莫名其妙出问题,你按说明做了
,却不能得到期望的结果,还不给你合理的出错信息,所以倒腾半天还不知道为什么。
微软有些东西的设计理念确实美好,然而实现的细节里面,就有各种问题。俗话说,一
切都在于细节!所以你就发现,成天都在反复地倒腾,得出的结果却非常少。很多时候
,工作时间长并不是因为工作太多,而是因为工具不可靠,工作方式太笨。

在微软工作之后,我似乎理解到了 Unix 和 Mac 的优点。Unix 的设计确实是丑,然而
它把这种丑给标准化了,做得一丝不苟。我们说要做成那个丑样,那它就一定是那个丑
样,而不是别的。丑是丑点,但你用的时候不会有出人意料的毛病,所有的毛病都是有
文献记载,载入史册的 :P

所以有些莫名其妙的问题反反复复折腾那么多次,费那么多时间,到后来我发现自己头
脑都麻木了,都快忘了自己是谁了…… 由于这种情况,目前我并没有在微软久呆的打
算。过一天算一天,看看其他机会吧。
--

Comments

Popular posts from this blog

CKA Simulator Kubernetes 1.22

  https://killer.sh Pre Setup Once you've gained access to your terminal it might be wise to spend ~1 minute to setup your environment. You could set these: alias k = kubectl                         # will already be pre-configured export do = "--dry-run=client -o yaml"     # k get pod x $do export now = "--force --grace-period 0"   # k delete pod x $now Vim To make vim use 2 spaces for a tab edit ~/.vimrc to contain: set tabstop=2 set expandtab set shiftwidth=2 More setup suggestions are in the tips section .     Question 1 | Contexts Task weight: 1%   You have access to multiple clusters from your main terminal through kubectl contexts. Write all those context names into /opt/course/1/contexts . Next write a command to display the current context into /opt/course/1/context_default_kubectl.sh , the command should use kubectl . Finally write a second command doing the same thing into ...

OWASP Top 10 Threats and Mitigations Exam - Single Select

Last updated 4 Aug 11 Course Title: OWASP Top 10 Threats and Mitigation Exam Questions - Single Select 1) Which of the following consequences is most likely to occur due to an injection attack? Spoofing Cross-site request forgery Denial of service   Correct Insecure direct object references 2) Your application is created using a language that does not support a clear distinction between code and data. Which vulnerability is most likely to occur in your application? Injection   Correct Insecure direct object references Failure to restrict URL access Insufficient transport layer protection 3) Which of the following scenarios is most likely to cause an injection attack? Unvalidated input is embedded in an instruction stream.   Correct Unvalidated input can be distinguished from valid instructions. A Web application does not validate a client’s access to a resource. A Web action performs an operation on behalf of the user without checkin...