应聘美国公司远程工作过程和总结
Date created: 2024-09-20 11:19
结果: 没拿到 offer
过程还是值得记录分享出来给大家提供点经验.
对方是美国房地产行业公司, 常在国内招人, 最被诟病的是薪资低, 应该能猜到是哪家了. 应聘职位是 GoLang 后端程序员.
本身情况
因为经济不景气等各种因素, 待着混日子的上市公司, 砍掉了对地区研发的投入; 留了几个名额, 给出了可自愿离开给赔偿的条件.
虽有挽留, 但团队和我招的人都没了, 留着干瞪眼么? 不如早日离早日闲, 难说后面赔偿都没了.
推特上一位线下也常聚的朋友, 第一时间把内招 JD 给我, 并帮内推.
JD 内容有几点我看重的:
- 完全远程. 满足我厌恶通勤, 想东南亚到处旅游的需求.
- 美国公司. 我悲观看待国内经济, 早就想脱离了.
- 英语只要读写, 不要求听说. 这个简直太稀有难得了.
另外国外真的是年龄无限制, 得知公司还有 60, 70 后的老程序员, 心中一暖; 我这种 40+ 的程序员在国内都被歧视麻了, 这个点确实让人心动.
另外自己口语确实不行, 做了 APP EnTube 来学英语, 但一直没下苦工夫去用, 更没练到可以流利说的阶段; 看 YouTube 乐呵下还行, 所以对英语不要求听说
的美国 remote 工作太稀有了.
赶早不赶晚, 简历给他后, 当天 HR 就加我, 被拉到 GitHub 笔试题仓库里 7 天做题时间.
有点懵, 原想简历交上去, 会排队或审核几天, 趁机复习下 GoLang. 上次认真使用是 2018 年给交易所做交易中台时候了, 后几年也就自己小工具项目用 GoLang 重构, 近些年侧重点在基于全栈的 GraphQL 的开发平台, 少写后端; 算下来好几年没用过了.
类似情况的朋友, 记得把应聘职位要求的技术认真复习好再投简历, 会比较从容. 就算捡起来很快, 但该花的时间和心理压力还是有的.
我更希望公司有全栈的职位, 但遗憾目前只招 GoLang.
笔试
没让保密, 但笔试具体题目就不透露了, 想必是题库随机到的.
题目水平还是不错, 貌似是比较专业的公司弄的.
看到是个人比较喜欢的 CLI 类, 可开心了, 心路历程大概这样:
- 哟, 这需求很简单啊~~
- 嘎, 不对不对, 似乎没那么容易~~
- 哎哟, 有坑有坑!!
准备连复习时间两天完成的计划破灭了.
作为遇到项目先问 GitHub 的狡猾程序员, 阅读 star 数最高的几个同类型项目的核心代码后, 只能说: 糙, 真的糙. 1/10 的边界情况都没考虑, 只用了最简单粗糙的方式实现, 都能拿那么多 star? GitHub 什么时候这么水了.
不禁有点怀疑人生, 是我运气好还是题目神奇, 网上真找不到一个完成度高到可参考
项目; 又或者是自己理解错了, 想得太复杂了? 阅读题目要求 n 遍后, 还是坚定自己的理解, 老老实实自己弄吧.
想用 AI 来作弊的, 可以洗洗睡了: 有用 Cursor + claude-3.5-sonnet, 但最大作用也就帮补充测试用例和检查细节.
心得:
- 认真反复逐字看题目要求, n 遍不过分, 需求分析最重要, 歪了神仙难救. 可以发 issues 问笔试官, 我没用, 仔细想了和分析后, 需求都理清了.
- 用最糙的方式把主要功能先实现, 便于搞清楚真正考察的点. 开始想简单了, 于是误以为考察重点在性能效率, 浪费了不少时间弄性能. 后来摒弃应试思路, 回归自己正常做项目状态, 才算理顺.
- 测试用例尽量 100% 覆盖, 实现中有点用到词法分析语法分析, 有很多边界和特例, 逼着尽量去写测试用例才能开发. 这种题目是让我对公司印象是加分的.
- 完善度要高, 别赶工. 公司不会看你快速完成就加分的, 程序员特别喜欢拿这个来炫技, 给了 7 天自然有给 7 天的原因. 我大概分了以下几个阶段: 复习+简单框架搭建; 核心功能实现, 正确性保障; 代码结构优化, 函数拆分, 可读性优化; 可配置性, 灵活性. 分了几个 branch 阶段来开发, 但好像最好别分.
完善和优化其实可以继续, 不巧的是发简历那天就有点小阳难受, 后面熬夜复习做题头越来越晕, 就不想做多错多了.
代码重构到满意的清晰度, 该做的配置和灵活性补充上去; 测试题目本身带了足够多的分析用例, 能跑过去就足以了; 强行 100% 有点假和刻意了, 开发过程中大约覆盖了 80% 的单元测试, 也就没强求. 性能没去加强, 处理题目给的目标绰绰有余, 个人判断考察点不在性能上, 虽然题目要求里有提到一嘴, 多少有点陷阱误导.
最卡人的反而是每次 commit 的规范和内容, 国内真是完全不管这个的, 哪怕我经常是团队里最认真写的人了, 犯懒时候也有应付. 所有交付都只能英文, 备注等也要检查下, 别有单词语法错误.
PR 认真写, 表达清楚, 配置使用方式写明白, 用 mermaid 画了状态图来解释和说明思路. 想想也知道, 如果你被抓过来审笔试题, 再遇到代码混乱一大坨, 分析起来痛苦的, 必然很不爽的. 让笔试官舒服的审完, 大家都开心.
大概用了四天时间来做, 周五拿到的题目, 周末算是全力在做了, 周一也请了一天假在弄, 周二基本就是检查; 中午过后, 头晕脑胀的, 再弄下去估计是负优化了, 索性提交了.
笔试题有明写, 两天后会给评审结果. 结果也不知撞什么大运, PR 提上去一个小时后, HR 就通知我笔试通过, 问明天有没有时间. 这里我又犯错了, 想了下现在工作交接中, 明天是能抽出时间的, 嘴滑就答应了. 其实应该找借口将面试时间延后, 好好休息下, 把病养好; 也有充分的时间把 GoLang 复习好.
答应也答应了, 于是晚上又熬着难受继续复习 GoLang.
网上很多没过的应聘者, 都在骂笔试方式. 这笔试难度和 7 天完成时间, 确实将大部分应聘成本转嫁给了应聘者, 投入的精力时间沉没成本都不小. 但我觉得这种实践型的笔试筛选方式是很好也有效的, 能力不足可能真的做不出来, 或者做出个考虑不全的半成品, 又或者代码结构乱七八糟; 开发思路和习惯也能体现出来, 这可比刷算法八股要好多了. 如果公司大气点, 能给笔试者几百千把块的小礼物, 弥补成本投入, 那就更好了.
面试
病的头晕脑胀的, 面试前磕了含乙酰氨基酚和咖啡因的药提神.
有点紧张, 职业生涯面试别人多, 自己被面面试屈指可数. 跳槽本就不频繁, 仅有几次还是被挖, 聊个天就跳了. 干得少的事情果然会紧张.
包括 HR 共四个人在视频会议出现, 聊下来感受并不是太好.
面试过程比较混乱, 我这里也就按照记忆随意写写了.
技术
GoLang 技术细节基本没问, 白复习了. 笔试题细节和思路也没问, 白准备了.
主要就是问简历上匹配当前职位的技能, 我敏锐的察觉到, 公司招聘预期是想要专业技能窄精熟的螺丝钉型程序员.
面试官在意的技术点, 以往的工作和项目中经常都是拿过来直接用, 没在意的直接踩过去了, 要不是照着 JD 改了下, 估计简历里面都不好意思写上去这些点.
比如担心我太久没写 GoLang; 我很想说哪怕新学都没关系, 早过了纠结在意某门语言的阶段了, 需要啥就学呗; 但没好意思那么嚣张的回答.
又有提到, 我好像前端技能会的比后端更多. 那分钟心里真冤, 工作需要就学了嘛. 于是冲动的表达: 觉得区分前端后端程序员就不对, 需要就学, 程序员不应该给自己画地牢, 除了 UI 美学设计天赋所限, 其他该学就学. 搞得面试官有点面面相觑. 不过确实也是, 自己 80% 的职业生涯都是和后端
技术在死磕, 毕竟前后端之分是后期才出现的.
也有问了 docker, 消息中间件, AWS 相关使用, 支付接口, gRPC 等等. 可这些都在项目里是都用过; 有的拿过来猜着就用, 有的看看文档就用, 没太多折腾痛苦都挺顺的, 也就没啥印象.
于是我很像骗子一样: 啊, 用过用过, 看看文档就用起来了. 难点? 好像没啥难点. 细节, 不太记得了没啥映像. AWS 啊, 是有把中华区技术当面讨论, 最后是他们版本低, 导致 CLI 管理端用不起来.
最后这个故事好像没机会讲, 确实估计用的不精不深, 但也没办法, 满足超过项目所需也就没深挖精深了, 这些手熟的工具型东西, 现学现用居多.
特意想说的数据库的熟悉程度, 基础功力, GraphQL 开发框架一类, 估计这个职位工作中用不到, 也没人想细节了解, 把我憋的.
团队理念/远程看法
聊了团队管理方式, 对远程看法, 在陈浩耗子哥团队的经历还给我加分不少, 其中一位面试官也是他的小粉.
这一块问题不大, 毕竟我向往远程已久, 虽没有正儿八经在远程团队的工作经验. 但自己管理的团队使用远程方式, 以及自己远程外包, 也都算是山寨的远程方式, 融入远程文化问题不大, 本身也认同异步文字为主的项目管理方式.
聊了聊以往项目管理方式, 无波澜的就过了.
业务
聊到业务, 得知如果能加入的话, 会做支付相关; 这可不撞到枪口上了么. 毕业起就做运营商的账务系统, 支付账务这块可以说熟的不能再熟了; 都干到业务专家给运营商定规范去了.
全世界还有哪个运营商比我们更能折腾, 有比我们系统更复杂的? 真的找不出来了.
结果我逮着这个项目组负责人一通问, 都有点反向面试了, 估计都被我问怕了.
问到我接入过 stripe 支付平台没, 这块真没有. 但是我连国内银行这种文档乱写糊弄人, 甚至没文档, 实现奇葩的乱七八糟的支付接口都弄过不止一次, WeChat 这种别扭痛苦的都接过; 去接 stripe 这种文档详尽, 规范合理的还叫事?
英语能力
英语能力这块是有重点问的. 如实回答, 不然立马转换到英语面试, 肯定招架不住; 几个面试官看面相就是英语很好那种人.
看得出多少是有些失望, 但我也没办法, 图的就是语言要求不高才兴冲冲来面试的. 一用就学很快的特性, 相信能很快提升起来的, 可这饼没法给面试官画.
总结
几位面试官都很务实, 完全没有面试造火箭上班拧螺丝的情况. 面试真就重点问的是拧过这几种螺丝没, 要怎么拧.
也能反向分析出, 公司是 IT 支撑业务的重业务型公司, 类似我刚毕业时候进的那家. 用技术把业务需求好好实现即可, 思路清晰对业务理解到位更重要, 很多时候技术不是难点和重点, 难的是怎么实现和转换业务逻辑. 好处是这样工作心智负担其实并不重, 技术学习和突破创新的压力也不大.
所以面试卡顿和不和谐的点大概是, 公司空缺的职位应该是初级的 GoLang 职位, 能力要求满足能干活即可, 也看重有没有掌握那几个工作中需要的工具和技术能力. 导致面试官问的几个点, 我都有种这不是顺其自然碰到了就用起来的东西么? 好像没什么可问可聊的狂妄感. 面试中的不和谐感大概就来源于此.
所以面试官给我的能力评价也许并不低, 但很可能会给出不契合当前空缺职位的结论.
因此如果真的想要拿到类似 offer, 未必要坦诚展现所有经历和能力, 根据 JD 所要的技术点来修改简历, 将这几个技术点/工具以往使用的细节仔细回忆, 甚至把以前的项目代码好好找出来认真回忆复习当时怎么用的, 怎么实现的, 重学一遍都行, 熟练度拉满. 哪怕这些点不难, 那就往深处研究下, 面试时候契合的侧重展示出来, 可能更利于拿到结果.
HR 薪资
HR 正常拉家常聊天, 介绍了公司之类.
再次感觉到, 这是美国的业务型公司, 和我的强业务出身经历是很匹配的.
技术方面, 果然是需要螺丝钉偏向, 并没有太多技术创新的机会, 我也能接受, 本职工作不能折腾, 就业余折腾嘛.
了解了公司规模和福利各方面的条件, 也判断出, 这种类型和规模的公司, 进去后想晋升涨薪基本别想, 估计只能等普调.
对公司映像不错, 能进打算长期待的, 英语能力没达标前很难找比这更好的远程了, 哪怕英语能力提上来了也未必想再折腾换了; 抱着这样的想法就想开始就把薪资谈高一些, 省得以后待长了 n 年不变的低, 憋屈痛苦.
于是期望至少能和现在薪资接近或者持平, 表达的有点坚决; HR 也反复劝说因为是远程反而比坐班更低, 现在国内大裁员等等, 希望我再降低, 我也只勉强的稍微松了一点点口. 和 HR 博弈和卡了几个来回, 估计就是挂在这个上.
比较时候我是考虑了包括五险一金自己所有收入的, 远程谈的自然只有单纯的工资一项收入, 其他要交都是自己的事; 可按我目前西南城市中偏上的薪资水平, HR 都觉得过高了, 这样来看公司确实非常看中国内的低薪竞争力.
后来想想, 按我希望参与远程, 积累美国公司远程经历, 通过用来提升促进英语能力等这些额外的好处, 应该是可以接受更低的薪水的, 但是没在与 HR 聊薪资前想的特别清楚, 这是严重失误的一点.
这个大家根据自己需求决定, 但还是要有底线吧. 同等能力, 印度都卷不过我们了, 很难找到比我们薪资更低的了.
失败总结
面试后一个星期的都没消息, 基本这时已经觉得没戏了.
整整一个月后, 直到今天才收到回复, 大约是又面了很多人, 统一考虑吧, 现在国内确实太卷太惨了, 以往很多人看不上的工作, 现在都一群人在抢.
HR 官方客套回复大约是: 招聘需求有限, 虽然您完全符合需求, 但遗憾没法录用.
我又厚颜问到真实原因:
- 这个项目组对英语要求有点高
- 项目能给薪资达不到我的要求
可以看出来, HR 对我薪资要求强硬还是有怨念的.
我总结大约是这几点:
- 岗位不匹配, 项目组大约是想找能好好干活的苦力熟手, 技术偏下窄精熟. 无论能力高了低了都不是好事, 螺丝得正好对准孔洞才能更丝滑的拧进去.
- 英文能力和 IT 能力不匹配. 强业务系统必然涉及到开会沟通, 苦力熟手在组内听中国同事安排干活文字沟通即可, 能力更强就会更多涉及业务和技术讨论, 避不开和美国团队开会, 口语沟通得流畅, 对听说的要求拉满.
- 薪资达不到我预期. 公司比我以为的更看重低廉成本, 低薪资是最大的竞争力, 毕竟美国也不缺能人, 我们的性价比才是最香的. 如果我松口说没有要求, 未必不能进, 看看国内惨烈的就业情况, 可能应聘者议价权真的不多了.
总而言之, 英文能力决定了你有多少机会去接触好的远程工作. 类似这个工作, 以往降低英文要求才能招到人, 现在他们显然是把要求加回来了, 毕竟现在是完全买方市场.
所以努力肝英文吧, 听说读写全都得拉起来, 共勉.
Long time no see
英语问题我觉得可以奔放一点,读写没啥问题,听说去italki上找个靠谱native外教练20小时就差不多可以准备面试了。这个可以有信心一点,我觉得我面试的时候,听说可能只有雅思5~6的程度
套路面试可以用pramp练习,码题我觉得以亚马逊为准就是Hackerrank上练个10~20题找手感
既然都考虑全球远程了,完全可以全英语操作,LinkedIn啥的弄起应该没啥问题
我notion上写了个全过程攻略,有兴趣我可以m你,或者我发在开花者群也行,这套操作算2年来的得意操作了 🤣
我需要~
留下微信或者邮箱,你需要那个notion上的攻略?
我也需要,求分享
我也需要,求分享~可以给你充电
请邮件我
请邮件我
我的分享不是专门面向远程哈,是讲怎样virtual面试欧美公司的。
有的初创远程或者亚洲公司远程面试流程不一样的。
求分享,感谢老哥♥️
求内推北美欧洲。
大佬,求攻略,west_20#163.com(需要换下 #=@,社区评论有限制。。)
先感谢啦!!
Send me your LinkedIn I will see if it is possible.
Even not refer you to my current employer I can still try introduce you to several headhunters.
Sorry for reply in English, I don't have a CN input method under Linux env.....
https://www.linkedin.com/in/xiangzheng-wu-85884a98/
Will sent you some messages on LinkedIn
I can put your resume to the company's inner refer system. But can not gurantee interviews and subsequent things, most roles may not support relocation
For the global headhunter for game industry, I'm happy to refer you via personal email contacts, they have bunch of job opportunites arround the world
Generally said, two things:
大佬,请邮件我
这一家吧:https://eleduck.com/posts/L5fzEn?
看薪资上限,不至于达不到西南城市中偏上的薪资水平啊
还真是, 这个比我拿到的 JD 都要详细. 囧...
咳咳, 只能说, 上限这东西, 看看就行了, 属于除非有特别的优势, 否则拿不到.
估计要拿上限的数, 英语能力得加码, 听说读写都得流利.
英语确实是去外企最大的阻碍,我已经见过太多技术厉害英语不行的人了,外国人又贼能BB,口语不行完全battle不过他们。
不要求口语只是门槛
候选人中一旦有人口语流利,这就很可能是自己卷不赢的原因
是的, 还是得提升自己.
现在越来越卷了
我曾经面试一个岗位,明确写着,英语可以用AI翻译软件
我一面结束后,二面delay了
JD改成了,口语流利,提高了技术年限和薪资,继续捞人
面试官发现这个薪资居然有那么多条件这么好的面试者,瞬间感觉亏了亏了,赶紧调高要求或者降低薪资
哈哈,我跟楼主面的应该是一家公司,笔试题也是7天。最终面试也是4个人,也几乎没有问golang以及笔试题,基本就是照着我的简历再问。最终也没有通过,很奇怪。那段时间他们公司貌似面了很多候选者。
如果你是在最近一个月面试的, 那我们可能是同一批备选者, 哈哈
能分享拒绝的理由么?
刚开始也说还在面试其他候选者,说会一起评估。等过了2个星期,说我技术不符,因为我主要是java,golang最近半年才开始用。但他也根本没问golang,我还准备了很久。然后问了一些java通用问题,都不是很深。我后来想可能我工资要高了,后来了解了一下,这种远程工资都不高。没办法,我还在找远程工作中,你怎么样,还有其他机会再面吗?
目前并没有积极的寻找其他远程工作机会, 像我总结的: 英语不够好, 好的远程工作机会其实很少.
而且我也在纠结, 也许找 solo 的方式能生存下去是我更想要的. 但这个路径明显比找远程工作难太多.
好在两者共同点都是需要提升英文能力.
都开始跟印度比薪资了?真卷,看来我的期望值还得往下调。
印度人能力持平或者接近我们的, 通常薪水是两三倍甚至四倍, 人家英语麻溜, 这是真没办法.
真实了解到时候, 我也很颠覆, 国内营造的鄙视信息茧房是要注意的.
谁都很难抢我们世界最便宜的人矿的地位的~
哭s,哎。只能学好英语去卷了。
都说北美程序员好活的,国内卷死了,读了你的文章,好像被他们误导了
毕竟算是国内远程, 理解成同工不同酬的国内便宜劳力外包即可.
待遇只能按国内水平看齐, 但有远程的优势和美国的轻松工作压力, 性价比其实不错了.
北美近期刚入行的找工很难的,目前看了是没身份的特别难,有身份的可能好一点。
资深的么就好很多,有身份就不会怕啥。
北美也卷,只是不卷“屁股在座位上”这个游戏,卷产出和成长卷挺猛。
楼主自己英语水平一般,但是国内英语好的人多的去了,你不能代表他们去跟印度人比较。
恰恰相反,我觉得 lz 的情况就代表了大多数,国内的教育重应试,搞得很多人都是哑巴英语。最主要一点就是没有在成长的环境中提供说了英语会有正向反馈的场景,这点大城市做的稍微好点,其他城市不谈了,这不是还有人叫嚣着要把英语踢出课本吗?
那我身边的人英语都挺好的,英语口语交流都没啥问题。
哇,分享的很详细,感谢
但这面试一个螺丝钉,给的面试题也太大了一点,做了那么多天
不是特别难, 但是要想全做全, 完成度高也是耗时间的.
拧螺丝, 流程工序规范熟练, 把螺丝拧好也不是个容易的事.
说一下个人了解到的信息吧。
寻找志同道合的创业朋友,合伙人,AI应用层创业,需要2人
远程招聘方向,面向全球。
全栈工程师
Python 后端工程师(爬虫、RPA)
1、能够熟练掌握Python或Java或golong等开发语言,熟悉常用的网络爬虫库(如requests、Scrapy,BeautifulSoup等)。开发和维护高效的网络爬虫程序与数据采集系统,和高价值数据源抓取用户信息。
2、对爬取的数据进行简单清洗、分类和预处理。
3、能够负责平台产品的开发工作,包括前端界面和后端逻辑的实现。
这个面试分享太用心的,给我们没面试过的,打了个样。
italki上20小时教练得多少钱啊
个人猜测可能是公司规模的问题。
难得看到一个精品文章,赞一个。
个人猜测哈,主要原因应该还是:
我了解到,有些公司的基础岗位,招能力较强的人,是有一定顾虑的。好像叫做 overquality。
毕竟面试者就算愿意降薪加入。但后续如果有一个匹配度更高,薪资也更高的岗位,可能就跳槽了。所以会担心面试者的稳定性风险。
英语听说确实是一个重要的加分项,建议有意找外企全球外包的工作的同仁,平时有空可以多练练英语听说。这一点真的很重要。
是不是z开头的房地产网站啊,好像面试过他家,待遇比国内平均水平还要低,不知道是为什么,可能对标的是三线城市? 我想这个错过了不用太遗憾,会有更合适的。总结的非常对,英文非常重要,虽然要求可能不高但是候选人有更流利的肯定是会要更流利的那一个的。
你确定不是让人家老美白嫖了,你在面试的时候就把他们没有干的活给做了
除非你的目的是拿工签,所有境外说招聘你远程办公的都是假的,因为你们根本不可能形成真实的劳动合同说到底你也只是在创业接单而已
小白,看了各位的面试经历,心里也有一些想法了,感谢博主辛苦码字。
不得不说,楼主还是很强的