iOS开发者如何做到升职加薪到25k?6年开发 架构师笔记送给你!

简介: 对于我们绝大多数人来说,工作最基本的意义是我们可以通过自己的劳动换取酬劳来养活自己,尤其是对于刚毕业的学生,拥有一份全日制的工作意味着自己走出校园,踏上社会,自己真正开始独立起来。

前言:

对于我们绝大多数人来说,工作最基本的意义是我们可以通过自己的劳动换取酬劳来养活自己,尤其是对于刚毕业的学生,拥有一份全日制的工作意味着自己走出校园,踏上社会,自己真正开始独立起来。

在养活自己的基础上,我们才会考虑一些其他的,比如收入的高低、自己是否能得到进步、工作内容是否愉快、工作环境是否满意、公司前景等等,然后根据自己的个人需求进行抉择,选择自己满意的工作。

所以对于工作来说,我觉得首先应该保持一种敬畏的态度,毕竟是工作给了我们报酬,所以作为回报,我们应该努力且负责地对待它。

其次对于每个人尤其是刚入职的萌新们来说,工作的另一层更大意义在于,这是我们自我能力提升的最快的方式,而且越是有挑战性的工作,收获越大。另外工作以来,我们真正有了自己的社会圈子,这对自己的影响甚至高于单纯的知识收获。

作为一个开发者,有一个学习的氛围跟一个交流圈子特别重要,这是一个我的iOS交流群:834688868,不管你是小白还是大牛欢迎入驻 ,分享BAT,阿里面试题、面试经验,讨论技术, 大家一起交流学习成长!

群内提供数据结构与算法、底层进阶、swift、逆向、flutter,整合面试题等免费资料
附上一份收集的各大厂面试题(附答案) ! 群文件直接获取
最新各大厂面试题以及进阶资料

群.png

加班的目的

有了工作后我们就有了任务,如果在我们工作时间里完成不了这些任务,就只得在工作时间以外完成,这就是加班。加班是一件很正常的事,无论从事什么职业,做什么工作,都存在着没法按时完成任务的可能。

而对于IT行业来说,加班是一件很常见的事,主要原因大概有以下几点:

IT行业的本身行业发展很快,因此产品迭代速度也就很快,导致任务不确定性很高,经常临时更改需求增加了任务量;

IT行业中修改BUG的时间很难估计,也许BUG本身修改也许只要一分钟,但是准确找到这个BUG却要几天时间;

IT行业从事人员变动大,突然有一个人要离开团队,他的任务也就落在团队其他人身上了;

IT人员对产品的精益求精,一个产品从能实现到真正有实用价值,这还有很长一段路要走,这个任务量也是难以估计的。

所以,其实我们可以看到加班并不是目的,加班只是个过程,加班的目的只是为了完成我们未完成的任务。

加班的价值?

那么加班有价值么?其实我们做的每一件事都不可能毫无价值,但如果我们做某件事上付出的时间和自己的收获不成正比的话,那我姑且认为这件事是没价值的。

因此,从这个角度上来讲,我认为加班对于除了刚入职的新人来说,真的没价值。

首先,让我们进步的不是工作,不是加班,而是学习

我的QQ群里曾有个小伙伴向我抱怨,他工作了三年,经常加班,现在想跳槽了,出去找工作却到处碰壁,也有单位要他,但给的薪资还没他现在高,这让他很苦恼。于是我问他,这三年里做了什么呢?他回答说,这三年他在公司里参与的项目都是基于一套产品,所有的项目都是基于那一套框架上进行更改,现在他对于这一套框架很熟悉,但是其他的了解甚少。

这个小伙伴遇到的情况,我想,绝对不是个例。

对于我们每个人来说,往往都会觉得刚入职的那段时间里进步是特别快的。我们从学校进入社会,开始真正的将学校里的知识用于实践,每一项工作,都需要自己学习然后应用,每天都很充实,收获很大。随着自己工作深入,渐渐地我们对于公司产品技术框架越来越熟悉,这时候我们会遇到一些瓶颈,需要自己去找资料、看书扩宽自己的视野来提升自己。

然而,这些本该自己用来学习的时间却被加班占用了。

一般来说,一个项目立项时候都会项目周期进行时间上的的评估,这个时间往往很合理的。在很多情况下,我们加班都是因为自己效率低下或者项目需求的突然改变造成的,加班无非是做自己本该上班期间就改完成的内容或者进行一些返工的事。如果是新人,我觉得还可以通过不断重复性的工作来提高自己,但对于对于这方面已经比较熟悉的人来说,这无疑是浪费自己的时间。就好比扫三年地的工人和扫一年地的工人,两人的能力上会有多大差别呢?

其次,勤奋会得到领导的好感,但只有真正个人能力才能到领导的青睐

有的小伙伴说,加班会让领导看到你很努力。

诚然,每个领导都喜欢看到自己的员工工作,就好比你家要装修房子,你请的工人每天夜以继日的给你干活你也会很开心一样。

但是如果你发现最后家里装修一团糟的时候,我估计你会对工人的好感瞬间消失殆尽。

我并不是说勤奋不对,只是觉得努力该有方向。埋头苦干,不如抬头看天。

与其进行无尽的加班,不如拿出一部分时间来看看好书,学习学习新的技术,了解了解优秀的开源框架。

也许一个新的框架可以让你的工作量减少一半,

也许你长期埋头苦干还不如别人在某次会议上根据某篇博客提出来的优秀建议给领导带来好感多。

依然是那句话,加班只是过程,而领导要的是结果。

不要让战术上的努力掩盖战略上的懒惰,而且很多人努力加班只是做个样子看,感动了别人也毁了自己。

第三,生活很精彩,工作家庭同样重要。

安卓大神stormZhang说到当年他的经历时候,有一段我印象很深刻。

当他刚入职转开发为了有份工作而学习做Ruby那段时间,每天在公司学习到都是11点后坐末班车回去。

对于老张的这段经历有两点我想说:

第一点 是在公司学习我认为还是自我的学习,算不上加班,因为你并没做工作上的任务。在本文的第一点里我说了学习是进步的关键,如果你觉得在公司学习效率高,那我觉得那很好啊,没问题;

第二点 是我真的很敬佩他的媳妇!两张两口子大学毕业后一起漂泊来到上海,身边唯一的依赖却每天早出晚归,这样的生活真不是每个人都能接受的。

比如我身边这位就肯定无法接受,所以,我不会这样做。

我觉得很多时候我们把成功二字看得太重,却忽略了家庭上的和睦其实也是一种成功。

陪伴妻子相濡以沫,陪伴孩子健康成长,陪伴父母慢慢变老,

陪伴是最长情的告白,但陪伴也是需要时间的。

有时候我在家里看书,我媳妇在一旁画图,我们各做各的,在一间屋里互不相扰,但是感情却也在慢慢凝结升华;

我每周都会坚持给爸妈打几个电话,每周有空都会去我姑家吃饭聊天,每个节日都会抽时间给家人买买礼物,每次长假有机会就回家看看。

我不认为我把这些时间都用在工作上我就会成为比尔盖茨那样的人物,或者多取得多大的成就,

相反,我认为我有个稳定的家庭环境会让我更加安心地工作、学习。

所以,别老是看着天,看看身边的人吧,多陪陪他们吧。

最最后,问我加班么,我当然加啦,毕竟我还要吃饭啊。但是我现在是尽量避免无意义的加班,比如拿到需求时候我会先和需求人员交流,避免因为理解不准确的原因造成返工;

比如我拿到任务时候会先评估下,觉得时间不够会尽早和领导说明,否则加班不说,还容易因为自己完不成影响整个项目的进度;比如空余时间多看书,多学习,提高自己的能力,效率高了自然加班也就少了。

最最最后,对于避免不了的加班,我们还是积极去面对吧。

作为一个开发者,有一个学习的氛围跟一个交流圈子特别重要,这是一个我的iOS交流群:834688868,不管你是大牛还是小白都欢迎入驻 ,分享BAT,阿里面试题、面试经验,讨论技术, 大家一起交流学习成长!

相关文章
|
3天前
|
前端开发 测试技术 数据处理
Kotlin教程笔记 - MVP与MVVM架构设计的对比
Kotlin教程笔记 - MVP与MVVM架构设计的对比
19 4
|
8天前
|
Android开发 Swift iOS开发
深入探索iOS与Android操作系统的架构差异及其对应用开发的影响
在当今数字化时代,移动设备已经成为我们日常生活和工作不可或缺的一部分。其中,iOS和Android作为全球最流行的两大移动操作系统,各自拥有独特的系统架构和设计理念。本文将深入探讨iOS与Android的系统架构差异,并分析这些差异如何影响应用开发者的开发策略和用户体验设计。通过对两者的比较,我们可以更好地理解它们各自的优势和局限性,从而为开发者提供有价值的见解,帮助他们在这两个平台上开发出更高效、更符合用户需求的应用。
|
18天前
|
API 持续交付 开发者
后端开发中的微服务架构实践与挑战
在数字化时代,后端服务的构建和管理变得日益复杂。本文将深入探讨微服务架构在后端开发中的应用,分析其在提高系统可扩展性、灵活性和可维护性方面的优势,同时讨论实施微服务时面临的挑战,如服务拆分、数据一致性和部署复杂性等。通过实际案例分析,本文旨在为开发者提供微服务架构的实用见解和解决策略。
|
2天前
|
消息中间件 监控 持续交付
后端开发中的微服务架构设计与实践####
在当今快速发展的软件开发领域,微服务架构已成为构建高效、可扩展和易于维护应用的关键策略。本文将深入探讨微服务架构的核心概念、设计原则与实战技巧,通过实例解析如何在后端开发中有效实施微服务,以应对复杂业务需求和技术挑战。我们将从微服务的拆分策略、通信机制、数据管理到持续集成/持续部署(CI/CD)流程,全面剖析其背后的技术细节与最佳实践,为读者提供一份详尽的微服务架构设计与实践指南。 ####
|
9天前
|
安全 Android开发 iOS开发
深入探讨Android与iOS的系统架构差异
本文旨在通过对比分析Android和iOS两大移动操作系统的系统架构,揭示它们在设计理念、安全性、应用生态及开发环境等方面的显著差异。我们将从底层架构出发,逐步剖析至用户界面层面,为开发者和科技爱好者提供一份详尽的技术参考。
19 1
|
12天前
|
监控 API 持续交付
后端开发中的微服务架构实践与挑战####
本文深入探讨了微服务架构在后端开发中的应用,分析了其优势、面临的挑战以及最佳实践策略。不同于传统的单体应用,微服务通过细粒度的服务划分促进了系统的可维护性、可扩展性和敏捷性。文章首先概述了微服务的核心概念及其与传统架构的区别,随后详细阐述了构建微服务时需考虑的关键技术要素,如服务发现、API网关、容器化部署及持续集成/持续部署(CI/CD)流程。此外,还讨论了微服务实施过程中常见的问题,如服务间通信复杂度增加、数据一致性保障等,并提供了相应的解决方案和优化建议。总之,本文旨在为开发者提供一份关于如何在现代后端系统中有效采用和优化微服务架构的实用指南。 ####
|
14天前
|
消息中间件 设计模式 运维
后端开发中的微服务架构实践与挑战####
本文深入探讨了微服务架构在现代后端开发中的应用,通过实际案例分析,揭示了其在提升系统灵活性、可扩展性及促进技术创新方面的显著优势。同时,文章也未回避微服务实施过程中面临的挑战,如服务间通信复杂性、数据一致性保障及部署运维难度增加等问题,并基于实践经验提出了一系列应对策略,为开发者在构建高效、稳定的微服务平台时提供有价值的参考。 ####
|
15天前
|
XML 前端开发 Android开发
Kotlin教程笔记(80) - MVVM架构设计
Kotlin教程笔记(80) - MVVM架构设计
|
14天前
|
消息中间件 监控 数据管理
后端开发中的微服务架构实践与挑战####
【10月更文挑战第29天】 在当今快速发展的软件开发领域,微服务架构已成为构建高效、可扩展和易于维护应用程序的首选方案。本文探讨了微服务架构的核心概念、实施策略以及面临的主要挑战,旨在为开发者提供一份实用的指南,帮助他们在项目中成功应用微服务架构。通过具体案例分析,我们将深入了解如何克服服务划分、数据管理、通信机制等关键问题,以实现系统的高可用性和高性能。 --- ###
38 2
|
17天前
|
安全 搜索推荐 Android开发
深入探索Android与iOS的系统架构差异
【10月更文挑战第29天】 在当今的智能手机市场中,Android和iOS无疑是两大主流操作系统。本文旨在深入探讨这两个系统的架构差异,从底层的操作系统设计到用户界面的呈现,以及它们如何影响了开发者和用户的体验。通过对比分析,我们可以更清晰地理解这两种平台的优势与局限,为开发者在选择开发平台时提供有价值的参考,同时也为用户选择设备提供一定的指导。
38 2
下一篇
无影云桌面