Java校招入职华为,半年后我跑路了

1 何来?

 

我,一个双非本科弟弟,有幸在 19 届的秋招中得到前东家华为(以下简称 hw)的赏识,当时秋招签订就业协议,当时 18 年10 月签订三方后 Hr 通知说是入了某 java部门,之后一系列组织架构调整原因等等让人无法理解的骚操作,最终在毕业前夕的五月,被通知调往其他 bg 做嵌入式开发(纯 C 语言)。

由于已至校招末尾,之前拿到的其他 offer 又无法再收回,一时感到无力回天,只得默默接受!

2 何苦!

 

毕业后,直接入职开始了嵌入式苦旅,由于从未了解过这么底层的开发,唯一用过的就是 Linux 系统了,其他基本和 Java 再无关系,也不需要去了解什么网络协议,数据库之类,整天面对的是无尽的内核知识的补学。

每天都需要和一堆人拉通对齐信息,现有代码极多,文档分散,为了搞清楚一个业务,常常需要和很多人确认。hw 由于开发人员众多,每个人都会分到极为具体的职责,各个职责之间基本上也不了解各自干嘛的,因此造成了这种情形。

对于大家在乎的下班时间,可能这就是 996 创始人的习惯吧,而在 hw 常年 9116 了,虽然我周末基本不会来,因为我会把尽量多的时间用来复习 Java,在职时每晚下班回去后,我都会打开电脑学习 Java,经常三四点才得以入睡。

这种日子持续了半年,虽然试用期六个月已经通过,但身体已经受到极大摧残,思考再三,准备趁着年底尽快面试,无论成功与否,辞职势在必行。

3 何去…

 

社招的时期也很难,由于已经不再是校招生,社招对于基本和经验有着更高的要求。在上海面了很多公司,一次次失败让我怀疑自己.突然有一天面了大学同学所在的一家公司,一面直接免了,直通技术 leader 面,难度基本和我所学无关,不看简历随便问.神奇的是之后通知面试过了,一时间又有了信心,自己还是有人要的,于是更有信心去面试其他公司.

但好运不常有,上海之行有个面试居然能拖到 4-5 面,最终的 CTO 面也没及时联系我,我直接拒了这家公司!后来薪资谈崩,回了南京.

在南京这个互联网机会渺茫之地,很多简历石沉大海,大多都是外包公司,穷途末路之际,我也去面了外包,技术面试自然是过了,也得到不错评价,比很多面试者技术实力都强,但是外包的确来得都是重点本科以下的求职者,可能还有很多造假的东西不做过多评述,而且薪资和工作经验牢牢绑定,不管你技术是怎么样的,毕竟这个项目过了可能也就辞退了,相当于临时工吧,复制的也永远是服务公司最边缘的最枯燥的部分,对于职业发展的确是污点。其他一些小公司也有面试,但要么面完之后杳无音讯,要么薪资过低也没打算去,因为加班肯定也免不了,何不如继续在钱更加多hw加班呢?

眼看临近年关!手头依旧没有什么满意的 offer,心灰意冷,便和家里人沟通联系亲戚介绍进入相关运营商或者银行等国企之类,这已经是最后的后路了吧,可能再无缘Java开发了。

4 归矣~

或许,我的努力似乎得到了上天怜悯就在除夕前几天的面试最终通过!

还是拿到了比现在的基本工资还搞得的公司,准备年后入职啦!

5 感悟

年轻人还有机会选择

因为热爱 Java,即使每天加班到很晚,也有精力继续学习

因为热爱,坚信能有个叫好归宿

因为热爱,即使是 hw这种500 强大公司,离职也没有半点犹豫

所以,年轻人,大胆的去追求自己喜欢的工作吧,没有人可以束缚你,除了你自己。

### 关于华为 Java 招机考的信息 #### 1. **考试形式** 华为招机考通常采用线上方式进行,考生会收到一封包含考试链接和规则的邮件。考试时间一般限定在一周内完成,错过此次机会则需等待至少半年才能再次参加[^3]。 考试分为两大部分: - **选择题部分**:主要包括计算机基础知识、算法与数据结构、编程语言特性等内容。这部分可能涉及单选或多选题型。 - **编程题部分**:通常是三道编程题目,考察候选人的实际编码能力。这些题目可能会覆盖字符串处理、数组操作、动态规划等问题[^1]。 --- #### 2. **典型题目及解析** 以下是基于过往经验总结的一些常见类型的题目及其解决方案: ##### (1) 数组相关问题 **题目描述**: 输入一组数字,找出出现次数超过总数一半的那个数。 **思路**: 可以利用摩尔投票法(Boyer-Moore Majority Vote Algorithm),该方法的时间复杂度为 O(n),空间复杂度为 O(1)[^2]。 ```java public class MajorityElement { public static int findMajority(int[] nums) { int count = 0; Integer candidate = null; for (int num : nums) { if (count == 0) { candidate = num; } count += (num == candidate) ? 1 : -1; } return candidate; } public static void main(String[] args) { int[] input = {3, 2, 3}; System.out.println(findMajority(input)); // 输出: 3 } } ``` --- ##### (2) 字符串转换问题 **题目描述**: 将一个给定的字符串按照特定规则进行加密或解密。 **思路**: 使用字符替换或者位运算实现简单的加解密逻辑。 ```java public class StringEncryption { public static String encryptString(String s, int key) { StringBuilder result = new StringBuilder(); for (char c : s.toCharArray()) { char encryptedChar = (char)(c ^ key); // XOR 加密 result.append(encryptedChar); } return result.toString(); } public static void main(String[] args) { String original = "hello"; int key = 5; String encrypted = encryptString(original, key); System.out.println("Encrypted: " + encrypted); String decrypted = encryptString(encrypted, key); // 再次异或还原原字符串 System.out.println("Decrypted: " + decrypted); } } ``` --- ##### (3) 动态规划问题 **题目描述**: 计算斐波那契序列第 n 项的值。 **思路**: 利用动态规划减少重复计算,优化性能。 ```java public class FibonacciDP { public static long fibonacci(long n) { if (n <= 1) return n; long prev = 0; long curr = 1; for (long i = 2; i <= n; i++) { long next = prev + curr; prev = curr; curr = next; } return curr; } public static void main(String[] args) { long index = 10; System.out.println(fibonacci(index)); // 输出: 55 } } ``` --- #### 3. **备考建议** 为了更好地应对华为 Java 招机考,可以从以下几个方面入手: - **掌握核心知识点**:深入学习 Java 基础语法、面向对象编程、集合框架、多线程等内容[^4]。 - **强化算法训练**:重点复习常见的算法和数据结构,比如排序算法、查找算法、树与图的操作等。 - **模拟真实环境**:通过牛客网或其他平台上的专项练习模块进行大量刷题,尤其是针对华为历年真题的部分[^2]。 - **提升软技能**:除了技术层面外,还需关注软件工程实践以及团队协作方面的知识储备。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值