发布于 2026-01-05 5 阅读
0

担任 Android 工程师一年

担任 Android 工程师一年

两年前我开始从事技术行业。我最初担任质量保证测试员,一年后转型成为开发人员。这期间我付出了很多努力,也投入了大量个人时间。

你可以在这篇关于我如何从生物学转行到科技行业,以及我如何学习安卓开发一年的文章中找到这部分内容。今天我想聊聊我是如何开始我的第一份安卓开发工作,如何跳槽,以及我作为安卓工程师的第一年整体感受。

我的第一个角色

我的第一份安卓开发工作始于一年前。我当时所在的公司给了我从QA转型为安卓开发的机会,让我把一半的时间投入到这两个角色中。

这次转型要归功于我利用晚上和周末时间学习 Android。我完成了Android 基础纳米学位课程Android 开发者纳米学位课程,并且还获得了Google 开发者认证这部分经历的详细内容请点击此处查看

两个月后,公司又招了一位质量保证人员,我就转为全职了。挑战也由此开始!

将某人转型为开发人员远比仅仅提供一台笔记本电脑和一个 Git 账号要难得多。在这里,我将解释我在那段时间遇到的一些障碍。

缺乏期望

我遇到的第一个问题是不清楚公司对我的期望。我当时觉得,他们希望我从第一天起就能有所作为,或许不像那些经验丰富的同事那样,但至少要从小事做起。这种感觉让我压力很大。由于没有明确的目标,我总是觉得自己不够优秀,觉得自己是个冒牌货。

缺乏导师

公司里没有导师制的概念,工作环境也不允许我们合作。我们几乎没怎么进行结对编程,因为总是有截止日期,公司要求我们不断交付成果。幸运的是,我的同事们总是乐于助人!每当我遇到难题或需要帮助时,他们都会坐在我身边,耐心地帮我。

缺乏反馈

那段时间我从未收到任何反馈。我做得好不好?我还能改进什么?我不知道,因为我没有可以汇报的对象。

缺乏学习文化

我认为,为了跟上时代步伐,我们需要不断学习,比如阅读博客文章、观看演讲、参加会议、尝试新事物等等。可惜的是,公司没有在工作时间提供学习时间,其他开发人员告诉我,这种情况很普遍。没有学习时间,我觉得自己甚至没有权利花哪怕10分钟时间阅读一篇我觉得有趣且与工作相关的博客文章。

问题不仅在于没有明确规定学习时间,而且当我提出申请时,却被拒绝了。

一个例子是,当我完成冲刺任务后,冲刺也接近尾声,于是我问是否可以用剩下的时间学习 Kotlin。这个请求被拒绝了。

还有一次,我申请参加一个安卓大会,结果却被要求从我的带薪休假中抽出几天时间

冒名顶替综合症

公司缺乏期望、缺乏反馈以及学习文化,让我的开发生涯前九个月更加艰难。我感觉这加剧了我的“冒名顶替综合症”。

其中一个例子就是提交和审核拉取请求。有时我会请同事私下检查我的代码,而不是提交拉取请求,以避免让所有人都能看到我的代码。

有时候,我在审核的时候,会盯着“批准”按钮好几分钟,担心批准了其他同事认为错误的东西。

而当我不同意某些事情时,我总是不敢大声说话,担心因为自己知识不足而遭到反击。

有时我会请同事私下检查我的代码,以避免将我的代码展示给所有人。

新公司,新挑战

后来,我获得了一个新的机会。多亏了以前和我共事的朋友,我受邀参加了 Babbel 公司初级安卓工程师的招聘流程。

我在他们公司举办的一次本地聚会上做志愿者时认识了团队成员。这对我决定申请这份工作帮助很大。我很喜欢公司的座右铭:人人学习。而且每个人都很友善,看起来在那里工作也很开心!但我并没有立刻申请,因为如果我觉得自己不够优秀,为什么要申请呢?

幸好我的朋友和伴侣鼓励我这么做。他们给了我投递简历所需的勇气。不久之后,我就进入了面试环节。面试过程相当简单:我需要完成一个小型应用程序的编程挑战,之后是与团队的技术面试,以及与招聘经理的团队契合度面试。

招聘流程

我花了整个周末完成编程挑战,并在周一立即提交了答案。不久之后,我就收到了现场面试的邀请。

技术面试主要围绕编程挑战本身展开,我们讨论了 Android 的优缺点,我为什么以这种方式实现功能,如何改进等等。在此之前,我们和招聘经理进行了一次简短的团队契合度面试,讨论了我遇到的挑战,我是如何解决这些问题的等等。

他们给了我这份工作,我接受了!

在我从事 Android 开发工作的第一年,我先在一家公司工作了 9 个月,然后又在我现在的公司工作了 3 个月。

学习环境

对我来说,一个很大的变化是每两周与我的工程经理进行一对一会议。这样,我就能清楚地了解我们对工作的期望。

我们不断收到关于如何改进以及如何互相帮助的反馈和建议。除了公司提供的内部培训外,我每周还有固定的学习时间,可以学习任何我想学的东西。目前为止,我一直利用这段时间来提升我的 Kotlin 和 RxJava 知识。

我们几乎每天都会进行结对编程。我的桌子旁边总是放着纸笔,方便我随时记录想法。而且我旁边还放着一把椅子,这样我的同事就可以和我一起坐着了 :-)

然而,我仍然深受冒名顶替综合症的困扰。

依然是冒名顶替综合症

我仍然在这方面感到吃力。例如,在结对编程时,如果遇到我不理解的主题,即使我的同事很有耐心地给我解释很多遍,有时我还是无法理解。

第二次或第三次之后,我开始感到胸口一阵剧痛。为什么我还是不明白?为什么我这么难理解?这种情况让我很焦虑。

我意识到我需要接受自己可能无法完全理解某个主题,但理解其基本概念是第一步!有时候,我们需要更多的时间和练习,才能最终将其“整合到我们的大脑中”:-)

例如,我以前一直搞不懂Java接口和抽象类的区别,无论看了多少例子,都无法完全理解。但后来我开始使用它们,即使我无法解释它们的工作原理,我也知道如何以及何时使用它们。

信心

目前公司的学习环境帮助我建立自信。即使我问了很多问题,也总有学习的空间!

经验不足并不意味着你的意见不重要。例如,如果提出的解决方案过于复杂,我会要求他们用更清晰的方式表达出来。此外,我提供的经验和观点也与此不同,这对于提升应用程序的用户体验非常有帮助。

为了改进

工程师的工作不仅仅是编写代码,而是需要掌握一系列广泛的技能。我目前还处于学习的初期,为了更好地掌握这些技能,我想重点关注以下几个方面:

  1. 沟通:由于英语不是我的母语,有时我难以清晰地表达自己的想法,而这对于我的工作至关重要。我可以通过多写作、多阅读和多交流来提高这方面的能力。
  2. 给予建设性反馈:我想给同事们提供有意义的反馈,这样他们也能和我一起成长。为自己的成就感到自豪:我需要创建一个清单来记录所有大大小小的成就以及我的整体进步,这样当我遇到困难时,我可以回顾过去,从中获得鼓励。
  3. 不要执着于我不知道的事情:当有这么多新事物出现时,这很难做到,所以专注于基本要素以及我手头项目所需的内容很重要。
  4. 多跟同事们分享知识!虽然我资历尚浅,但这并不意味着我没什么可分享的!我需要不断分享我觉得有趣的文章和演讲。我知道我的同事们会很感激的。
  5. 要有耐心,不断学习:像我一样不断学习,但要对自己更有耐心。
  6. 自我关爱:需要休息的时候就休息,不要对自己太苛刻。放松也是一种高效的工作方式。

我非常喜欢我的新工作,并且渴望不断学习、进步和分享。我希望我的经验能够帮助您实现目标。

原文发表于我的Medium博客。

文章来源:https://dev.to/lariki/a-year-as-android-engineer-16a7