40岁开始学习Android开发的我成了一名技术主管

2022 年 2 月 14 日 CSDN

【编者按】在程序员群体中,有关35岁危机的讨论几乎从未暂停。大龄程序员似乎是一个特别的存在,其实在CSDN平台,有不少40、50岁依然在写代码、写博客的程序员,例如《一个老程序员的计算机视觉蹒跚学习之路》的作者LaoYuanPython今年已经51岁了。而本文作者则跟LaoYuanPython一样,早期也是一名C++程序员,可在担任管理职务后,每天打交道的只有PPT跟Excel了,而编程技术慢慢就落下了……
作者 | Elye       译者  | 弯月
出品 | CSDN(ID:CSDNnews)

有人曾告诉我:“到了35岁,如果你还是一名程序员,就要开始为自己下半生的职业发展寻找其他出路了。长江后浪推前浪,很快你就会被年轻一代淘汰。

CSDN付费下载自视觉中国

于是,在35岁时,我也开始反思自己的事业。然而,我的情况有所不同。当时我并不是程序员,而是在做管理。尽管当时的我十分怀念早期做C++程序员的时光。

在我的职业生涯的早期,曾有过短暂的几年从事C++开发的经历。然而,在开始担任管理职务后,我的编程技术就慢慢落下了。我的日常工作就是开会,做PPT和Excel表格,当然还有很多电子邮件。我常常几周甚至几个月都看不到代码,更不用说写代码了。


离开管理的工作


39岁时,我移民了。在新的国度,我的管理技能无法再发挥作用。这里的公司更喜欢有当地经验的人担任管理职务。

我的职业生涯面临着变迁,我可以选择从事其他不需要技术力的临时工作。但我非常喜欢编程。我想重新回到出发点。所以,我尝试了几个C++面试。

很尴尬的是,我甚至未能通过初步的编程测试,我感到非常沮丧。

我不确定自己是否还想回去做C++编程。C++相关的工作面向的是嵌入式软件开发,而且还涉及硬件,不是我感兴趣的主流软件开发。


第一步:做准备


既然不再热衷于C++开发,那么今后我该做些什么呢?

当时,移动开发非常流行,尤其是iOS。但要学习iOS,首先需要一台MacBook和iPhone。这两样设备我都没有。在没有下定决心之前,我不想浪费如此大的一笔投资。

当时,我有一台Windows笔记本电脑和一部三星S2手机。我看到了Android开发的增长趋势。虽然在当时Android的使用并非最流行,但使用安卓手机的人越来越多,包括我自己。

于是,我选择了Android,并明确了自己的方向。

接下来,我需要获取相关资源:

  • 感谢Google,开发工具包Android Studio是免费的!而且注册Google应用商店只需要25美元!

  • 我买了几本书,由于Android 的开发技术在当时还很新,因此实质性的内容很少。

  • 最后,我从网上找到了很多学习资源和代码参考。此外,我还通过订阅邮件获取了一些最新的信息。我发现,如今学习新技术比过去更容易了,任何人都可以获取最新的资料!

下一步是什么?当然是开始动手编程!

我开发了一些小应用,并发布到了应用商店。在这个过程中,我尝试了端到端的开发体验,即从设计、开发、测试到公开发布。

了解自己想学什么,然后去学!


第二步:重新开始


虽然我可以自学,但我知道如果想加快学习的速度,最佳方式就是与其他 Android 开发人员一起工作。我希望加入一家从事 Android 开发的公司。

我通过自己发布的应用,获得了一家移动开发公司的面试机会。这确实是一个千载难逢的机会。

我知道自己的技术力还达不到高级开发人员,所以我会接受任何职位,只要能得到工作和学习的机会。我愿意从事初级开发的工作,因为我可以获得充足的学习机会。

不幸的是,我在最后一轮面试中失利了,深受打击。

那么,之后我做了什么呢?我发了一封电子邮件,感谢公司提供的面试机会。

此外,我还恳求他们是否愿意考虑让我作为实习生加入公司。我告诉他们,我甚至愿意无偿工作,只要有机会学习提高自己的技术能力。

最后,他们终于答应了,只不过不是实习生的岗位,而是一个移动应用QA测试的职位。

我非常高兴!虽然不能从事写代码的工作,但我可以测试代码,我可以与专家交流并向他们学习。作为奖励,我的测试工作还有报酬,总好过无薪实习。

环境是最佳学习动力。


第三步:学习

 

进入一家移动开发公司工作,成为 Android 开发人员的目标已实现了一半。为了实现剩下的一半,我必须提高自己的开发技术,做好准备,在机会出现时牢牢抓住。

不幸的是,作为QA测试人员,每天我都需要工作8个小时,因此感觉自己的时间有点不够用。我非常羡慕公司里的开发人员,因为他们能够一边工作一边学习,但我就没有这么奢侈的待遇了。

尽管如此,加入移动开发公司本身就拥有很大的优势。我可以访问公司的学习资源,这可以帮助我探索自己的学习方向,我很感激。

最重要的是,我认识了该领域的一些专家。其中很多人都比我年轻。但年龄不是问题,重要的是他们在这个领域的经验。我非常羡慕他们的技术和知识,也很感谢他们愿意与我分享。

在工作时间之外自学编程非常不容易,但我感到很充实。学习一点一滴的知识,朝着正确的方向慢慢前进。我的目标就是成为一名安卓开发。

在这个阶段,我需要的是不断地展示自己的学习成果,同时兢兢业业地履行QA的职责。我会定期向 Android 开发组长展示我取得的成果,并在有 Android 开发人员职位空缺时考察我是否做好了准备。

6个月后,我转到了开发岗位,正式成为了一名 Android 开发!虽然只是一名初级开发,但毕竟是开发人员!

实际工作是最好的学习方式。


第四步:分享

 

在正式成为Android开发时,我已经40岁了。但这不是故事的结尾,只是一个开始。

我非常高兴,因为我终于可以在工作时间写代码了。我的工作就是写代码。我可以在工作中学习了。我必须与专家结对编程,并向他们学习。我必须阅读他们的代码,而他们必须审查我的代码。这样,我对Android的理解速度就会更快。

虽然我可以满足于现状,但我深知岁月不饶人,我没有其他人那么多的时间。我需要做的不仅仅是学习。

在技术负责人的鼓励下,我开始写博客。我花了很长一段时间做准备,因为我一直在想,谁愿意读我的文章?我又不是技术专家。如果我写的文章不达标怎么办?如果我写错了,该怎么办?

尽管如此,我发现自己的记忆力已不如往昔,前面学到的知识,过几天就忘了。所以,我的初衷很简单,为自己写博客,其实就是学习笔记。即便没有人阅读也没关系,因为至少我可以通过阅读自己的文章复习学过的知识。

于是,我开始记录下自己的学习成果,尽可能简单地记录,帮助我回忆。每次我都会画图表,并附上了一段示例代码。一切都是为了确保我能轻松回忆起自己学到的知识。

令我惊讶的是,真的有人读这些文章,还有人留言表示感谢。他们极大地鼓励了我继续写博客。更重要的是,有人坦言不同意我的观点。诚然,有时我也会受打击,但这些留言让我意识到眼前的问题还有不同的想法。

有时真的是我错了。有时,虽然我没有错,但我误解了对方的观点。这些都是学习的机会,是成为更好的 Android 开发必然需要经历的阶段。

只要愿意敞开心扉,在分享时,自己也能学习到更多。


第五步:走出舒适区

 

经过4年多不懈的努力,我逐渐适应了Android开发。我成长为了一名高级Android开发。除了从事开发的工作,我还需要负责指导其他初级开发人员。

当然我并没有掌握Android的一切,我需要不断了解如何获取和查找信息,并更好地判断对错。Android开发也在不断发展,因此需要学习的东西很多。我很享受。

我可以就此止步,安安稳稳地生活和工作。我热爱我的工作,我喜欢编程。但目前我的影响力非常有限。我问自己,这就是自己接下来10年的生活吗?

所以我决定等待时机,并持续前进。我申请了负责iOS和Android的首席开发人员职位,但我明白自己并不擅长iOS。

知道自己无法胜任的感觉会让我很不舒服,但正是这种不舒服的感觉可以鞭策自己不断学习和扩展知识。所以,我开始花时间学习iOS。

我认为,我对iOS的掌握无法达到Android的水平,但学习iOS可以帮助我开拓看待移动开发的眼界。让我了解Android擅长什么,以及什么地方落后。

无法分辨优点和缺点,表明我们学习的知识还不够。继续努力。


重新接触管理的工作


时至今日,距离我第一次涉足Android开发已经过去7年多了,这期间发生了很多变化。

如今的我是一名移动技术主管,负责跨移动团队的协作和架构工作。除了技术之外,我还需要负责部分管理工作。

我又一次面临没有太多时间写代码和学习的状况。但我仍然喜欢我的工作,因为从本质上来看,这依旧是个技术岗位,只是在更高的技术水平。

如果想做出更高级别的技术决策,就必须建立扎实的技术底子。我不能吃老本,必须不断学习,不能重蹈覆辙。

以上就是我的小故事。40岁开始学习软件开发也不算晚。

参考链接:

https://levelup.gitconnected.com/i-started-android-development-at-40-6591c1e8bc38

新程序员003》正式上市,50余位技术专家共同创作,云原生和数字化的开发者们的一本技术精选图书。内容既有发展趋势及方法论结构,华为、阿里、字节跳动、网易、快手、微软、亚马逊、英特尔、西门子、施耐德等30多家知名公司云原生和数字化一手实战经验!


   
   
     
监控员工离职倾向系统已被深信服下架;热度超微信、QQ的元宇宙App主动下架;IntelliJ平台删除Log4j组件|极客头条
☞历史上的今天:编程语言Julia公开发布;IBM诞生
同样是 ARM,为什么 Mac 会成功,Windows 却输得一败涂地?
登录查看更多
0

相关内容

Android(安卓)是一种以 Linux 为基础开发的开放源代码的操作系统,主要应用于便携设备。2005 年,Android 公司被 Google 收购,随后 Google 联合制造商组成开放手机联盟。Android 已从智能手机领域逐渐扩展到平板电脑、智能电视(及机顶盒)、游戏机、物联网、智能手表、车载系统、VR以及PC等领域。
《Julia数据科学》及代码,166页pdf
专知会员服务
44+阅读 · 2021年11月4日
专知会员服务
95+阅读 · 2020年12月19日
【2020新书】使用Kubernetes开发高级平台,519页pdf
专知会员服务
65+阅读 · 2020年9月19日
专知会员服务
51+阅读 · 2020年9月2日
【实用书】Python编程,140页pdf
专知会员服务
41+阅读 · 2020年8月20日
【2020新书】现代C++初学者指南,301页pdf
专知会员服务
156+阅读 · 2020年7月24日
FPGA加速系统开发工具设计:综述与实践
专知会员服务
63+阅读 · 2020年6月24日
Python数据分析:过去、现在和未来,52页ppt
专知会员服务
99+阅读 · 2020年3月9日
硬件产品开发:外包五要素和外包地图
人人都是产品经理
0+阅读 · 2022年4月17日
D 语言是否可作为入门级的编程语言?
我的操作系统安全之路:从入坑到入门
InfoQ
0+阅读 · 2022年3月28日
Android 基础知识课程助您轻松构建应用
谷歌开发者
0+阅读 · 2022年3月25日
国家自然科学基金
4+阅读 · 2017年12月31日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
16+阅读 · 2014年12月31日
国家自然科学基金
1+阅读 · 2013年12月31日
国家自然科学基金
1+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2011年12月31日
Arxiv
0+阅读 · 2022年4月20日
Arxiv
3+阅读 · 2022年4月18日
VIP会员
相关VIP内容
《Julia数据科学》及代码,166页pdf
专知会员服务
44+阅读 · 2021年11月4日
专知会员服务
95+阅读 · 2020年12月19日
【2020新书】使用Kubernetes开发高级平台,519页pdf
专知会员服务
65+阅读 · 2020年9月19日
专知会员服务
51+阅读 · 2020年9月2日
【实用书】Python编程,140页pdf
专知会员服务
41+阅读 · 2020年8月20日
【2020新书】现代C++初学者指南,301页pdf
专知会员服务
156+阅读 · 2020年7月24日
FPGA加速系统开发工具设计:综述与实践
专知会员服务
63+阅读 · 2020年6月24日
Python数据分析:过去、现在和未来,52页ppt
专知会员服务
99+阅读 · 2020年3月9日
相关基金
国家自然科学基金
4+阅读 · 2017年12月31日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
16+阅读 · 2014年12月31日
国家自然科学基金
1+阅读 · 2013年12月31日
国家自然科学基金
1+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2011年12月31日
Top
微信扫码咨询专知VIP会员