程序员学英语

这显然不是新鲜的话题,但再怎么重复强调都不过分!

为啥要学

  • IT是当今世界发展最快的行业,没有之一!作为其中的从业人员,要始终保持对最新技术的关注度,难免需要阅读英文新闻或文章
  • 平时工作中,碰到技术难题,用英文搜索引擎,会更容易找到解决方案,例如stackoverflow
  • 绝大多数流行的编程语言,都是基于英语词汇来定义保留字或语法的(if...else...)
    if (learnEnglish) {
    console.log('higher salary')
    } else {
    console.log('996')
    }
  • 看到用拼音命名变量的赶脚,总是带着一丝喜感
    const pingguo1 = 'da ping guo'
  • 进军知名IT外企(微软、苹果、亚马逊、特斯拉)的敲门砖。
  • 其他:例如一般不会有英语很不好的技术大牛,可见技术学习和英语学习是相辅相成的关系

本码农和英语学习的那些事儿

学生时代

我从小在内地一座小城市长大,英语学习是从初一开始的,那时候的英语学习基本都是应试为主,高考要求什么就学什么。我们那个年代的高考英语没有听力和口语,所以英语老师教我们的方式,基本以背单词、语法为主,俗称“哑巴英语”,另外一方面,英语老师自己也不能做到很标准的发音。当时,我们学生学习单词的时候,喜欢把对应的中文发音写在旁边,我印象最深刻的一个单词:quite (快吃)。虽然很欢乐,但......我从小就是比较顽皮的孩子,不喜欢死记硬背,对这种枯燥无味的“哑巴英语”提不起丝毫兴趣,再加上我们当时的英语老师比较年轻,不怎么能“镇”住我们,最后的结果是,我中考英语60分勉强过关。

到了高中,自己开始想学习了,但发现英语基础太差,背单词和学语法都非常的吃力,花了很多时间在上面,高考勉强考了107分(150分总分)。

进入大学时代,那时,英语四级和学位证挂钩,从大二开始直到大四,每年有两次报考机会,也就是说大学期间,总共有六次机会。大学期间学英语,我花了很多的时间,尝试了各种方式,效果还是不好,所谓事倍功半!

不出所料,我集齐了四级准考证六张。在大四毕业那年的暑假,用颤抖的双手拨通查分电话,仔细输入准考证号,自动语音回复道:“您本次四级考试成绩为60.5分,重复请按一”,我在按“一”的同时,已经泪流满面!

英文面试

进入社会的头几年,基本不需要用到英语,也就没怎么用心去学。

直到2007年,同学推荐我到一家知名IT外企面试,其中一个躲不开的环节就是英文面试,而且是比利时的同事电话面试!为了准备这个面试,我把英文“自我介绍”背的滚瓜烂熟,而且想好了“策略”。当电话拨通后,简单寒暄了几句(其实也没听懂对方说什么,就是hello, how are you? I am fine, and you?一通操作蒙混过去),接着对方提了一个问题,我也没听懂:( 我已经想好了,不管对方说什么,我都说:"Can you let me introduce myself, firstly?",果然奏效,欧洲人都很nice的同意了,于是我把之前背诵的自我介绍,“滔滔不绝”的完整的背诵了一遍,一切按照计划进行,总共三十分钟的面试时间,被我消耗殆尽。就在我准备优雅的说“byebye”的时候,那边提出:“can I ask one more question?” 额,接着就尴尬了,老外在巴拉巴拉,然后我在pardon?pardon?还好老外非常nice的,每次说一个字母的方式,来迁就我:“S - Q - L, T - O - P”(就是sql语句里面top的语法).对于字母我还是能听懂的,由于事先没有准备这个问题的英文版本,只能硬着头皮,一个单词一个单词的回应了问题。面试结束后,已经汗流浃背!我算幸运的,遇到了很宽容的面试官,使我进入了这家非常好的IT外企!感恩!!!

全英文工作环境

进入IT外企后,面对的是全英文的windows操作系统和各种软件,全英文交流的邮件,全英文的电话会议!紧张、羞涩、尴尬、不知所措是我那时候大部分时间的工作状态。还记得,回复第一封电子邮件,花了一个小时,写了不到三行英文; 第一次电话会议,说了两句话:“Good morning” “byebye”。还好公司是宽容的,给我足够的时间提高自己。

我用的都是笨办法:每一次写邮件,尽量模仿同事的写法,每一个用词,每一句话,都要查字典来确定拼写和语法都没有错误;每一次电话会议,用录音设备全程录下来,在回去的地铁上重复听,熟悉对方的发音、说话习惯;卸载机器上的中文输入法,使用文字聊天工具的时候,逼自己和同事(包括中国同事)用英语来写。

就这样坚持了5年,基本能够流畅的写长英文邮件,电话会议也能听懂八九不离十,能够用还不太标准的发音,进行技术方案的演讲。

在这家外企工作了13年,今年初离职了。离开时百感交集,离别感言也一直说,公司是多么伟大的公司,给员工极大的尊重和宽容。愿老东家摆脱困境,Great Again!

学习经验总结

  • Rule Number one: 坚持、坚持、再坚持!点点滴滴,汇聚星辰大海
  • 坚持磨耳朵:坚持听英文,耳朵是个很神奇的器官,有时候,即使听了,没经过大脑,它也有效果。比如说,反复听一首歌,不特意去学,后来也不自觉会唱了。推进一个很优秀的APP(开言英语),有很多免费的栏目,当然收费栏目的也不错.
  • 空杯心态,夯实基础:万丈高楼平地起,不要介意重学基础语法和单词,特别是发音,把this, that, it, the读标准也不容易
  • 勇于开口交流:不怕说错单词,不怕说错语法,不怕说的是只言片语。开口了,就成功了一半
  • 结合工具:开会时,结合肢体语言,和PPT辅助表达意思
  • 创造环境:大家有个误区,进了外企就能克服英文。我遇到太多待了很多年,还是不能开口说的同事。要主动创造环境,例如创造和老外的定期会议(一周一次,两周一次都可)。组织部门的英语角

有人会问,是通过背单词来提高,还是通过听说来提高?我觉得这个没有标准答案,因人而异。我学习笔记感性,喜欢听和说,可能其他人从背单词反向找灵感。可以尝试不同方式,找到合适自己的方法。

今天恰逢圣诞节,Merry Christmas!

码农英语四级考了6次,也能进知名IT外企的更多相关文章

  1. 管理与技术未必不可兼得,一个20年IT老兵的码农生涯

    作者|康德胜 我是一个喜欢写代码但几乎不太有机会写代码的CTO,也是一个看得懂财务报表.通过所有CFA(金融特许分析师)考试并获得FRM(金融风险经理)认证的拿到金融MBA的CTO,如果我有幸被称作码 ...

  2. 老码农教你在 StackOverflow 上谈笑风生

    作为一个高大上的码农,你肯定用到过 StackOverflow,必须的.会有人否定这个断言么?那他恐怕不是真正的码农,或者说还没入门.StackOverflow 对于码农的重要性,基本就和诸葛亮对刘备 ...

  3. 老码农冒死揭开行业黑幕:如何编写无法维护的代码[ZZ]

    下面是一篇有意思的"代码大全",可谓 逆软件工程. 老码农冒死揭开行业黑幕:如何编写无法维护的代码 原文如下 让自己稳拿铁饭碗 ;-) – Roedy Green(翻译版略有删节) ...

  4. 拥抱Mac之码农篇

    拥抱Mac之码农篇 使用Mac大概两年时间.之前用着公司配的一台27寸的iMac.无奈机械硬盘严重拖慢速度,影响工作心情.于是入手Macbook Retina 13.这两年的开发工作所有在Mac上完毕 ...

  5. 码农"混子"的思想转变

    首先介绍一下自己,在高中的时候学校对于我们这种普通班级采取的都是放养状态,所以高中的学习真是不咋地,可能除了自己擅长的数学以外其他也就考个三四十分,后来磕磕绊绊的在打游戏之余也会学习,第一次参加高考跟 ...

  6. 6年DotNet码农的盲目经历

    前言   第一篇没有选择记录与技术相关的文档,是考虑到有必要给查阅这篇文档的伙伴们“自我介绍”一下,大佬们看了求带或指导,我很愿意学习,初学者们看了千万不要重复走我之前的“学习之路”:我老家贵州,再过 ...

  7. 【整理】待毕业.Net码农就业求职储备

    声明:本文题目来源于互联网,仅供即将从学校毕业的.Net码农(当然,我本人也是菜逼一个)学习之用.当然,学习了这些题目不一定会拿到offer,但是针对就业求职做些针对性的准备也是不错的.此外,除了技术 ...

  8. <开心一笑> 码农 黑客和2B程序员之间的区别

    笔记本电脑 码农: 黑客: 2B程序员: 求2的32次方: 码农: System.out.println(Math.pow(2, 32)); 黑客: System.out.println(1L< ...

  9. 经典算法C++版(参考一线码农博文)

    鉴于一线码农的算法博文基本通过C#完成,此处用C++再实现一遍,具体解法可参考其博文. 地址:http://www.cnblogs.com/huangxincheng/category/401959. ...

随机推荐

  1. 单体->集群->模块化->分布式微服务

    开头语: 每篇一段开头语,在技术的道路中寻找文采的乐趣.(如果随笔中都是大白话勿喷,兄弟姐妹们) 单体项目 单体项目适用于小型开发,或自己来进行小项目的测试和使用. 单体项目的缺憾 多人开发项目所出现 ...

  2. 【2020.11.28提高组模拟】T2 序列(array)

    序列(array) 题目描述 ​给定一个长为 \(m\) 的序列 \(a\). 有一个长为 \(m\) 的序列 \(b\),需满足 \(0\leq b_i \leq n\),\(\sum_{i=1}^ ...

  3. 使用SpringSecurity Oauth2.0实现自定义鉴权中心

    Oauth2.0是什么不在赘述,本文主要介绍如何使用SpringSecurity Oauth2.0实现自定义的用户校验 1.鉴权中心服务 首先,列举一下我们需要用到的依赖,本文采用的是数据库保存用户信 ...

  4. docker数据持久化/共享---volume,bind-mount,tmpfs-mount

    一.将Docker数据挂载到容器 在Docker中,要想实现数据的持久化(所谓Docker的数据持久化即数据不随着Container的结束而结束),需要将数据从宿主机挂载到容器中.目前Docker提供 ...

  5. Java数据结构(十四)—— 平衡二叉树(AVL树)

    平衡二叉树(AVL树) 二叉排序树问题分析 左子树全部为空,从形式上看更像一个单链表 插入速度没有影响 查询速度明显降低 解决方案:平衡二叉树 基本介绍 平衡二叉树也叫二叉搜索树,保证查询效率较高 它 ...

  6. 第15.16节 PyQt(Python+Qt)入门学习:PyQt中的信号(signal)和槽(slot)机制以及Designer中的使用

    老猿Python博文目录 老猿Python博客地址 一.引言 前面一些章节其实已经在使用信号和槽了,但是作为Qt中最重要的机制也是Qt区别与其他开发平台的重要核心特性,还是非常有必要单独介绍. 二.信 ...

  7. ATT&CK 实战 - 红日安全 vulnstack (一) 环境部署

    靶场描述: 红队实战系列,主要以真实企业环境为实例搭建一系列靶场,通过练习.视频教程.博客三位一体学习.另外本次实战完全模拟ATT&CK攻击链路进行搭建,开成完整闭环.后续也会搭建真实APT实 ...

  8. Docker 本地镜像推送到阿里云(五)

    最近在学习Docker,从安装Docker开始,到自定义制作镜像mycentos,但是怎么把它推送到阿里云,一直是困扰我的问题.后面有时间了解了一下,根据本地镜像推动到阿里云其实并没有我们想象中那么难 ...

  9. 交叉熵损失函数,以及pytorch CrossEntropyLoss的理解

    实际运用例子: https://zhuanlan.zhihu.com/p/35709485 pytorch CrossEntropyLoss,参考博客如下: https://mathpretty.co ...

  10. 冲刺Day7

    每天举行站立式会议照片: 昨天已完成的工作: 1.确认商品分类栏,并前后端交互 2.检查.更正订单模块的代码 3.检查.更正用户模块的代码 今天计划完成的工作: 成员 任务 高嘉淳 检查代码.提供测试 ...