momo 发表于 2025-4-10 14:05:20

其实现在仅仅才是程序员职业生涯的开始,路漫漫,吾将上下而求索。

momo 发表于 2025-4-10 14:06:04

一路走下来,觉得有两点非常重要:

一是选择正确的方向。选择了正确的方向,路才会走的比较顺。至于什么方向是正确的,那就是适合自己的、自己打心里喜欢的方向,毕竟只有真心喜欢,才能有动力持续走下去;另一方面,也要结合实际去选择方向,“面向就业”选择方向,是我一路走过来的一个经验教训。
二是积极乐观的心态。放宽自己的心态,专注提高自己的技术实力,不要太急于求成。“越想得到什么,就越得不到;放平心态,一切自然水到渠成”。不抱怨厄运,积极乐观进取地去工作、学习、生活,一路走下来,你就会发现:越积极,越幸运!

momo 发表于 2025-4-10 14:06:55

所以,总结下来,就是“选择自己想要的方向 + 积极带来的实力和运气”,帮助了我顺利转行到计算机。

momo 发表于 2025-4-10 14:08:39

如何准备技术面试
总结了我自己的准备面试的套路。我不敢说这个套路一定有用,但它确实帮助我面试通过一个创业公司实习、网易实习散招、阿里校招的面试。

这里分享出来,供大家参考。(校招、社招都是差不多的套路)

momo 发表于 2025-4-10 14:09:22

阿里对学校、学历向来是不看重的(不管是校招、还是社招),只要有能力,即使专科都能进;如果技术不够, 恐怕清北留学的都进不了。当然运气也是很重要,但运气是实力和积极争取带来的啊;如果真的因为我“运气太好”,连续六面都通过了,那你也完全可以来尝试。

momo 发表于 2025-4-10 14:09:39

一、梳理面试问题
关于面经内容,网上也泛滥的很了,尤其是牛客网上,一抓一大把的BAT面经。

我们第一步要做的,就是去网上搜罗各种面试真题(面经),把里面的问题一一分类列出来。

以Java面试为例,可以分类为:

1、技术知识(JAVA基础面试题、计算机面试题、操作系统面试题、JAVA WEB面试题。同类的面试问题列到一起,比如JVM的内存模型和GC机制,就是同属于JVM类问题,方便之后进行JVM专题突破)

2、项目经验(根据自己的项目整理)

3、数据结构与算法

看多了面经,就可以发现,其实面试问题都是类似的,就那么些问题,如果大多都能回答上的话,肯定就会面试官的基本认可。

momo 发表于 2025-4-10 14:10:00

二、逐个专题突破
1、技术知识

对每一类技术知识面试问题,逐个进行专题突破。比如JVM(类加载器、垃圾回收、性能调优等)专题突破。

这里要注意:我们不是要简单地找到一个特定面试答案,而是要专题突破,基本透彻搞懂这个专题——因为我们是要真正搞懂这个专题,而不是单纯的背面经。背面经的不可行在于,一是不理解的话肯定很难背下来,二是很容易就会被有经验的面试官问出破绽,因为面试往往会针对某一个专题,深入地去提问。

专题突破的学习方法有:google相关博客阅读、书籍中相关章节的阅读(不是全书阅读)。


2、项目经验

主要是个人的一些项目经验梳理。现在进入IT的人越来越多,如果没有项目经历,基本上就没什么可能通过面试。

项目经验主要梳理出:使用什么技术解决了什么问题、遇到什么困难和怎么解决这些困难、技术选型和架构能力等。

对于项目里用到的(你想在面试官面前提到的)技术点,要一一列出来搞清楚。

momo 发表于 2025-4-10 14:10:18

3、数据结构与算法

主要是应对笔试和面试手写代码。

首先,应先复习下基础的数据结构和算法,比如链表、二叉树、排序算法、查找算法等。

之后,便是以刷题为主,可以每天去LeetCode或牛客网上刷几道算法题练手,避免手生(社招基本可以跳过这步)。

至于一些比较复杂的算法,比如海量数据处理的几种算法(topN法、hash法、bit-map等),则只要搞懂原理,能说出思路即可。

以面试问题为驱动的专题突破的学习方式,好处在于就像以实践为驱动的知识学习一样,目的性强,驱动力足,渴望知道答案。

这时候,往往会有种“书到用时方恨少”的觉悟。

momo 发表于 2025-4-10 14:10:35

三、几句话简洁总结面试问题答案
有了上面的专题突破,相信你已经对这个专题下的面试问题的答案都大概心中有数了。

但是,我们学习的时候,通常会涉及到很多细节(甚至源码细节)。而人的记忆力是有限的,可能过段时间就忘了这些细节,又不得回头翻看你的专题学习笔记。如果细节知识多起来,就不是一两天就能看完的。而面试一般有多轮,也不是一两天就能面完的。这样面试心理负担太重了。

其实这些太细节的东西,在面试的时候是不需要讲出来的。面试的时候,通常聊的是某个技术大概的运作原理,而很少会问某一行代码。

所以一个可行的办法就是,学习完专题知识后,对每一个面试问题,用几句话简洁地记录下答案,比如:

问题:类加载的五个过程:加载、验证、准备、解析、初始化。

回答:
1、加载:把类字节码.class加载到内存
2、验证:验证.class文件是否合法

3、准备:准备内存空间等
4、解析:把.class字节码解析成class结构
5、初始化:初始化类的对象

在面试回答问题的时候,只要能大概描述出原理机制,其实就已经基本足够。

因为在实际工程中应用的时候,如果你个应用开发工程师,大多数也是只要知道运作原理和会使用即可,业务为王;只有遇到问题的时候,才会到源码级别的debug。

momo 发表于 2025-4-10 14:10:52

四、面试前过一遍自己总结的面经
这样整理下来,面试知识点经过提炼后会变的很简洁,每一次面试前,只需要回头翻看一遍这些精炼总结就行了。

刚开始面试的时候,可能需要看一天才能回顾完,看多几次熟练了,一两小时就可以看完。

看完自己总结的面经再去面试,自然信心满满的,积极的状态也能为你的面试添加Good Luck。

同时,其实很多童鞋面试时都会觉得,某个知识点自己是大概模糊知道的,但被问到的时候,就是说不出来。而这些精炼的总结毕竟文字少,多看几次就能记住,在回答面试问题时,可以很好地帮助我们组织专业术语。
页: 1 2 [3] 4
查看完整版本: 转行自学计算机之后的从业之路