先来自我介绍:

老家农村,家里好不容易把我送到大城市读书,大学非985,211,但在我们老家,能出一个本科大学生也是非常不容易的。因为农村信息的相对闭塞,我对大学专业一无所知,加上分数并非前茅,最后被调剂一个我并不喜欢的专业,这里就不透露自己是什么学校了,只能说毕业之后为了能多赚点,选择了送外卖,这一送就送了将近3年的时间。

为什么学编程?

接触到编程是一次很偶然的机会,有一次送外卖,对方是自己的学长,他是计算机专业的,毕业后就进了一线互联网公司,那之后就偶尔有跟他聊人生聊未来,一次契机,他劝我何不自学编程,来做程序员?后来考虑了很久,自己也综合对比了各行各业的发展,最后决定学习编程,选择了 Java 方向。

拼多多服务端开发三面还原(一二面+HR面)

拼多多一面(大约1h左右):

  • 讲一讲 final / finally的区别
  • try-catch-finally在不同情况下的执行顺序?
  • finally里return和外部的return谁覆盖谁?
  • wait / notify / notifyAll说一说?
  • notify唤醒线程之后可以立刻执行吗?
  • sleep / wait的区别?
  • Java 的线程有哪些状态?
  • Java 堆的分布?
  • 为什么要分出两块 survivor?
  • Mark-Copy 的流程?
  • 什么情况下会触发 Full GC?
  • Full GC 和 Minor GC 的耗时比例?
  • 老年代和新生代的空间大小比例?
  • HTTP 状态码列举一些?
  • connect 失败会报什么异常?
  • IO 分类?NIO 是阻塞的还是非阻塞的?
  • 聚集索引、联合索引、覆盖索引解释一下?
  • 口头设计一个表和索引,然后说一说哪种查询会走联合索引,哪种会走覆盖索引?
  • 聊项目,以及项目的困难点?
  • 手撕算法环节:有序数组 / 链表转平衡二叉树

拼多多二面(大约50分钟左右):

  • 自我介绍
  • 聊聊项目
  • TCP 的流量控制和拥塞控制说一说 查问:接收窗口的空间是怎么分配的?是不是多个 TCP 连接共用一块内存还是各自有独立的?
  • TCP 和 UDP 的区别
  • 网络的五层模型,每一层有什么协议?
  • PING 命令用的是什么协议(是 ICMP,我没答上来)
  • OS 的内存管理、进程管理说一说
  • 物理内存空间、虚拟内存空间?
  • 虚拟内存的作用?
  • 内存的连续空间不够分配的时候怎么处理?全局内存的空闲空间不够分配的时候怎么办?
  • 快排和归并的复杂度,快排的退化
  • 平衡二叉树各种操作的时间复杂度
  • AVL 树和 红黑树 的区别?
  • 红黑树的应用?JavaTreeMapAPI 为什么不用 AVL 树?
  • B 树和 B+ 树的应用?有什么区别?为什么 MySQL 用 B+树?
  • Redis 和 memcache 的区别?Redis 何以高性能?(这里我暴露了自己的菜鸡水准,面试官耐心地指正了我对于他俩的错误认知)
  • 异步非阻塞 IO 了解吗?(扯了点事件分发器的 Proactor 模型,面试官认可了)
  • 手撕算法:二分查找变形题,浮点数的等差数列,一开始公差是1.0,在某一个位置公差变为0.1,找到该位置
  • 看你写的之前送外卖?为什么毕业之后没有从事自己本专业内的工作?(我回答的想多赚钱)
  • 你的Java是自学的?怎么坚持下来的?期间遇到什么困难吗?
  • 手头上有哪些 offer ?

拼多多三面(HR面大约30分钟):

  • 对拼多多有什么了解?给拼多多做一个画像?
  • 家是哪儿人?对于未来的就业城市有什么想法?
  • 有女朋友吗?
  • 目前面了哪些公司?对于目前投的公司有什么偏好吗?
  • 有想象过在拼多多工作的一天吗?对薪资有什么要求?
  • 从哪些渠道了解互联网相关的讯息?
  • 如果拼多多把你挂了,你觉得会是什么原因?我和你聊了二十分钟,你觉得你的哪些非技术性的综合素质可能不如其他候选者?
  • 薪资
  • 你有什么想问的吗?

拼多多三面面试题答案:

这三年来,我是如何自学的?

(1)观看零基础学习视频

看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,首先学习Java语法基础,再到框架,从基础到深入,还是很容易入门的。至于视频,网络上实际上有一大堆,我这边是学长给我的珍藏版,应该是搜索不到,如果你需要,当然我也可以免费分享给你。

Java零基础视频(五十五个阶段)

(2)阅读前辈的一些书籍和笔记

当我学到一定基础,有自己的理解能力的时候,会去阅读一些前辈整理的书籍或者手写的笔记资料,这些笔记详细记载了他们对一些技术点的理解,这些理解是比较独到,可以学到不一样的思路。

书籍和笔记

SpringBoot核心技术笔记

(3)动手实操做一些小项目

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,所以当我把框架学完之后,就自己去动手去做了个小的商城项目。关于这个商城项目的教程,你有需要我也可以分享出来。

(4)加一些社群,找一个好师傅

如果真考虑要转行学习Java,那就多交一些志同道合的朋友,甚至是去找一个好的师傅带带你,这是我给你最真实的建议。加入一些社群,参与到一些技术讨论时,能够极大地提升我自己的学习积极性,另外找一个师傅带带自己,学习和实操过程中遇到的很多问题就比较好解决一些,整个效率也就提升得比较快了。如果大家对Python感兴趣的话,可以加一下我们的学习交流抠抠群哦:649,825,285,免费领取一套学习资料和视频课程哟~

总结

对于转行做程序员,我能成功靠什么?两个关键词,决心和毅力!

如果你下定决心,做了选择,就一定要坚持到最后。

如今我已成功转行,现在在这个行业只算得上一个新人,但随着岁月增长,我会慢慢成为一名“老猿”,但我也会依然把自己这颗学习的心保持到老。同样的,我也希望你在青春迷茫时,能不要放弃,因为每个人,都有柳暗花明的那一刻。

从外卖员到程序员,自学3年终于转行成功,三面“拿下”拼多多,把经历分享给你们!相关推荐

  1. 送快递到程序员,自学3年终于转行成功,薪资从5K涨到了12K

    前言 先来自我介绍: 老家农村,家里好不容易把我送到大城市读书,大学非985,211,但在我们老家,能出一个本科大学生也是非常不容易的.因为农村信息的相对闭塞,我对大学专业一无所知,加上分数并非前茅, ...

  2. 从高级程序员-资深程序员-技术总监,我都为你整理好了学习路径

    我把程序员到架构师的技术成长之路分为几个典型的阶段:程序员 - 高级程序员 - 技术专家 - 初级架构师 - 中级架构师 - 高级架构师 工程师 [阶段描述] 推荐<Java 编程思想>这 ...

  3. 程序员为程序员推荐:我觉得这本书不错,分享给你

    题图:PEXELS 虽然人与人的认知千差万别,读一本书的体悟也大相径庭,然而,好书之所以是好书,有一点是对所有读者相通的--让我们有所得.读书让我们获取知识的同时,变得更为睿智:对自我与生命的理解更为 ...

  4. 程序员客栈:程序员的经纪人_对于程序员:如何处理干扰和打扰

    程序员客栈:程序员的经纪人 您好亲爱的做白日梦的人,将咖啡因变成可待因! 我希望您不会因为一些破坏性通知或来自队友的推荐而来到这里,打扰您"检查他发现的这篇很棒的文章". 在接下来 ...

  5. 初级程序员 高级程序员_程序员的十大电影

    初级程序员 高级程序员 In this article I have collected the best programming movies that every programmers must ...

  6. 漫谈程序员(二)程序员保值的4个秘密

    程序员价值算法产品思维 在国内,很多人说程序员是吃青春饭的,一开始说过了30岁就得转行,后来又有人35岁是一道坎--看起来好像程序员真的和风尘女子一样,注定有朝一日会年老色衰不再受人青睐. No!我要 ...

  7. 你眼中的程序员------加油程序员

    按理来说,真正的忙起来的工程师呢,其实也没有太多时间来贵论坛看帖子.而且论坛的帖子水贴太多太多.消极能量也太多.这是第一次,也很可能是唯一一次发帖.只是想说点实话,与君共勉. 1,"后悔选择 ...

  8. 程序员需要“程序员鼓励师”吗,对程序员到底有没有效果?看一下!

    没错,你没看错,今天要谈的话题是程序员鼓励师,程序员需要有程序员鼓励师么?你心里的回答当然是需要的,如果你是男程序员的话.女程序员我就不清楚了,因为没做过女人,这里就不研究女人的心里的,这里只讨论男程 ...

  9. 程序员需要“程序员鼓励师”吗,对程序员到底有没有效果?

    程序员需要"程序员鼓励师"吗,对程序员到底有没有效果? 没错,你没看错,今天要谈的话题是程序员鼓励师,程序员需要有程序员鼓励师么?你心里的回答当然是需要的,如果你是男程序员的话.女 ...

最新文章

  1. web 前端常用组件【06】Upload 控件
  2. 「小程序JAVA实战」小程序视频上传方法的抽象复用(57)
  3. Apache用户认证,域名跳转
  4. 如何找到 SAP 电商云 Spartacus UI 产品明细界面对应的 Angular 实现 Component 名称
  5. php js date 格式化,javascript date格式化示例_javascript技巧
  6. 配置独立于系统的PYTHON环境
  7. [leetcode sort]56. Merge Intervals
  8. C++PrimerPlus学习——第九章编程练习
  9. 【写法规范】-- 设计请求返回接口与封装
  10. 动手学深度学习(PyTorch实现)(一)--线性回归
  11. 基本功 | Java即时编译器原理解析及实践
  12. Angular2的input和output(原先的properties和events)
  13. 腾讯开发微信花了多少钱?真的技术难度这么大吗?难点在哪里?
  14. Springmvc 的post请求的json格式参数
  15. C/C++[入门最后两题]
  16. 信工所复试收集材料分享
  17. c语言生成正弦波,方波等mif
  18. 哲学家就餐问题之管程
  19. 定时定点打卡活动策划使用小程序解决方案 greeting = “Good day“;
  20. 小米红米全系列官方原厂预装系统

热门文章

  1. 你的实力就等于别人对待你的态度
  2. 2020快手食品行业数据价值报告
  3. linux3.10内核支持mpls,将MPLS编译进linux内核中
  4. 基于材料数值计算大数据的材料辐照机理发现
  5. 基于密度的停留点识别方法
  6. 矩形分割(洛谷P1324题题解,Java语言描述)
  7. 质数筛(洛谷P5736题题解,Java语言描述)
  8. 【Java】浅析八种基本类型
  9. [SpecialJudge]构造“神秘“字符串(洛谷P3742题题解,Java语言描述)
  10. 递归不行就换动态规划(洛谷P1028题题解,Java语言描述)