`

程序员薪资与发展(四):软件开发者的职业发展之路

阅读更多
概述:你是否考虑过在5年、10年、15年以后的职业规划呢?你还要继续写代码么?如果你之前没有考虑过这个问题,那么这篇文章可以给你很好的建议,它将指导你发现软件开发人员可能经历的职业发展之路。

你是否还一直保持着对编程的热爱?每一段通过测试的代码都能给你愉悦的成就感;每当接触到一个崭新的前沿框架你都感到兴奋并跃跃欲试……如果你仍一如既往的保持着这份激情,那么软件开发这项工作真的对你再适合不过了。但是,你是否考虑过在5年、10年、15年以后的职业规划呢?你还要继续写代码么?如果你之前没有考虑过这个问题,那么这篇文章可以给你很好的建议,它将指导你发现软件开发人员可能经历的职业发展之路。

软件开发者的职业发展之路

关于职业发展之路

众所周知,程序员可以发展为架构师、团队管理者或者企业领导等。但是大多数人对于这些职位的经验技术要求和需要的时间等还知之甚少。比如,许多人都知道一些关于manager的日常工作,但是除了发送邮件和召开一个又一个会议之外的工作你又知道多少呢?中级管理层的manager与高级管理层的leader又有什么区别呢?

初级程序员

  • 0-3年的开发经验(毕业生居多)
  • 对应用程序的生命周期基本了解
  • 能够编写简单的代码和脚本
  • 需要得到密切关注和帮助
  • 对于复杂应用程序的各个层面都不熟悉

作为一个年轻的充满激情和热情的初级软件开发者,他们努力把自己的工作做到最好。对于所有一切他们都感到好奇,他们尝试着学习所有全新的东西——包括方法、范例、程序语言、设计模式以及技术等。在学习期间,他们还使用不同的语言实现一些应用程序,当然,这些程序都是最初级的。

虽然在获取新知识方面进展神速,但是他们没有足够多的代码编写经验,而且缺少高级资深程序员的智慧和技巧。在编程方面,初级软件开发者阅读大量的文章,书籍并进行模仿训练。每个初级软件开发者都有这样的经历:开始写一些很差的代码,然后调试出许多愚蠢的错误,当问题很久都无法解决的时候又重新开始。但即使是这样,也无法深刻的理解模仿的价值和最佳实践的方式,毕竟这是处于开发者的初学阶段。

高级程序员

  • 4-10年的开发经验
  • 能够编写复杂的代码以及整个应用程序
  • 对整个应用程序的生命周期有较深刻的理解
  • 不需要别人提供帮助,通过使用搜索引擎解决大部分问题

在经历了数以万计次的代码编译、警告、错误的洗礼后,他们能够完全通过自己获取的知识来开展自己的工作了。他们不需要指导和监督,只需使用Stackoverflow、google、baidu等网络资源他们就能解决几乎所有问题。除了专注于解决问题,他们对于代码的质量和算法的合理性也非常关注。在多次面对类似问题的时候,他们使用自己收集和编写的可重用代码库来节省时间,提高效率。当他们能够在项目或者公司独当一面的时候,他们希望能有更好的发展前途。

架构师/团队管理/程序管理

  • 7-10年的开发经验
  • 至少与高级程序员的编程技术相当
  • 架构师:具有对不同编程技术的广泛知识和见地,这个职位并不是只对一门语言和技术精通就能胜任的。
  • 开发管理:除了深厚的专业知识,还需要掌握管理学、“软”技能(含口才、文笔等)以及了解业务领域。

有一些软件开发人员在经过几年的编程后对这项工作渐渐厌倦了,这一步就是程序员职业过渡的开始。但是最终向什么方向发展,这取决于程序员自己。那些性格外向,有良好表达能力和软技能的人会考虑管理的角色。作为一个团队的领导者,他们将专注于项目管理,确保目标的达成情况,安排成员的工作任务以及调动团队的工作热情。他们会花大部分的时间在会议上来规划接下来的工作计划和未来的目标,以确保一切都能走上正轨。

如果在经过6年以上的编程工作后,你确定管理工作并不是你喜欢的职业,那么成为架构师将是你使用专业技术迈向下一步的成功阶梯。拥有对不同领域的标准、性能、语法等广博知识的高级程序员能够胜任架构师这个职位。作为架构师,打字编写代码已经不是他们的主要工作了,他们的主要工作是设计整个系统/应用程序,与其他架构师讨论整个拓扑和高级体系结构,定义标准和策略。架构师关注整体结构更甚于技术细节,通常高级程序员会向他们提一些准则和需求,一旦确定了新的需求,架构师会很快知道如何使用正确的方法来设计和测量所有不同类型的应用程序。

中层管理者

  • 通常有一些头衔如总监/经理(产品经理、项目经理、开发经理)
  • 负责雇佣/解雇人员
  • 向高级管理层作报告

经理有多种不同类型。对于细节和工作流的跟踪着迷的软件开发人员适合于做项目经理;重视产品版本新特性的视觉感受和应用程序用户体验的软件开发人员适合于做产品经理;另外还有最常见的职位开发经理,它的工作是负责协调管理整个团队及团队成员的需求。它还有另外一个职责就是按照开发的需求来雇佣相关人员,当然如果某人无法胜任某个工作,他也会对其进行解雇。这就意味着开发经理通常很难和团队成员做朋友了,但是如果你能带领的你的团队获得成功,那么你会得到很大的回报和所有人的尊重。

高级领导

  • VP, CTO或者CEO
  • 负责任命/招聘/解雇中层管理人员
  • 向董事会/股东作报告

虽然一个公司的决策者只能有一个,但是许多公司会每隔几年更换一些新鲜空气——招聘一些有丰富经验的人员进入高级管理层。他们中的一些人会传播一些其它企业先进的管理经验或市场经验,而另外一些人可能在同一家大公司服务超过了20年。

 

本文翻译自Software Developer Career Path

 

2
2
分享到:
评论

相关推荐

    为什么程序员是一个伟大的职业

    作为一个程序员,不仅意味着编写代码,更意味着在创新、协作、市场需求、薪资待遇以及职业发展的可持续性等多个方面展现其伟大之处。 首先,创新是程序员工作的重要组成部分。在软件开发领域,创新不仅仅是艺术和...

    现在java程序员的工资为什么都这么高?共2页.pdf.z

    Java程序员的薪资水平在IT行业中一直居高不下,原因多种多样,涵盖了技术需求、市场供需、职业发展等多个方面。以下是对这一现象的深入探讨: 首先,Java作为一种强大的、跨平台的编程语言,其应用领域广泛,包括...

    程序员面试功略+程序员面试宝典

    《程序员面试功略》与《程序员面试宝典》这两本书是程序员在求职过程中不可或缺的参考资料。它们涵盖了面试中可能遇到的各种技术问题、面试技巧以及职业发展规划,旨在帮助程序员提升面试成功率,进入理想的公司。 ...

    程序员实习总结7篇.doc

    实习是程序员职业生涯初期的重要环节,它提供了将理论知识转化为实践技能的机会。在7篇程序员实习总结中,我们可以提炼出以下几个关键知识点: 1. **学习与工作规律的总结**:实习期间,实习生通常会发现自己在学习...

    程序员宝典

    《程序员宝典》是一部专为程序员准备的指南,旨在帮助他们在考试、面试中脱颖而出,积累必要的知识和技能。这份资源包含了大量的...无论是在校学生准备面试,还是在职程序员寻求职业发展,这本书都是一份宝贵的资源。

    程序员求职宝典

    9. **职业规划与发展**:讨论长期的职业规划,包括选择适合的公司文化、职业晋升路径,以及如何持续学习和保持技术更新。 10. **行业动态与趋势**:分析IT行业的最新趋势,比如云计算的发展、区块链的应用、AI的...

    Android程序员简历最新版

    他的求职意向是成为一名Android软件工程师,并期待面议薪资。 在IT技能方面,李先生具备以下特长: 1. **网页开发**:他熟悉HTML、JavaScript、jQuery和Ajax,以及easyUI框架,这些是构建现代网页应用的基础。 2. ...

    oracle java.pdf

    5. **薪资待遇**:Java开发者的薪资相当可观,根据经验年限不同,薪资范围在8千到2.5万人民币之间,体现了其较高的职业价值。 Oracle Java课程是建立在这个强大语言基础上的培训项目,具有以下优势: 1. **Oracle...

    程序员面试葵花宝典

    10. **面试技巧与职业素养**:如何有效地自我介绍、如何回答行为面试问题、如何进行薪资谈判等,这些都是决定面试成功与否的重要因素。 《程序员面试葵花宝典》的详细内容将围绕以上各个领域展开,通过实例解析、...

    java开发程序员就业前景分析.pdf

    因此,对于计算机专业的学生来说,通过参加实战项目为主的Java职业技能培训,能有效提升自身技能,缩小与企业实际需求的差距,提高就业竞争力。 成为一名合格的Java开发工程师,需要掌握一系列技术,包括但不限于...

    Python-关于职位面试谈Offer程序员职场生涯等

    针对"Python-关于职位面试谈Offer程序员职场生涯等"这个主题,我们将深入探讨与Python相关的面试技巧、求职策略以及程序员的职业发展路径。 首先,面试是每个程序员步入职场的关键环节。对于Python开发者来说,掌握...

    一个阿里工作4年java程序员的从业心得-写给还在迷茫的朋友.pdf

    当达到一定经验后,考虑向系统分析师或架构师等角色转变,以突破薪资瓶颈,实现职业生涯的进一步发展。 总的来说,一个成功的Java程序员不仅需要扎实的技术基础,还需要对业务的深刻理解、良好的职业规划和团队协作...

    ios-whitelist, 那些真正对 iOS 程序员好的公司.zip

    对于iOS程序员来说,加入一家好的公司意味着有良好的工作环境,这包括但不限于:有竞争力的薪资、丰富的职业发展机会、健康的工作生活平衡、优秀的团队氛围以及强大的技术栈支持。这些因素有助于提高员工的生产力和...

    程序员面试攻略(第二版)

    总的来说,这本书是程序员面试准备的宝贵资源,无论你是刚入行的新人还是经验丰富的开发者,都能从中获得有价值的信息,提升自己的面试表现,迈向成功的IT职业生涯。通过深入学习和实践书中的知识点,你将更有信心地...

    java开发程序员就业前景分析.docx

    Java开发程序员的就业前景在当前的信息时代显得格外广阔。Java作为一种多平台应用的面向对象的编程语言,其特性包括卓越的通用性、高效性、平台移植性和安全性,使其在众多领域得到广泛应用。从个人电脑、数据中心到...

    学习java编程软件.pdf

    初级程序员主要负责代码实现和简单功能模块的开发,而随着经验的积累和技能的提升,中级程序员能独立完成项目模块的设计与实现,高级程序员则更专注于系统架构设计和性能优化。 对于初入行业的Java软件工程师,他们...

    VB.Net计件工资管理系统源码

    【VB.Net计件工资管理系统源码】是一款基于Visual Basic .Net开发的软件系统,用于管理企业的计件工资计算。在企业中,计件工资制度通常适用于那些按照生产或完成任务的数量来计算工资的员工,例如生产线工人或者按...

    计算机软件-商业源码-青工管理系统源码.zip

    6. **培训与发展**:规划员工的职业发展路径,提供培训资源,提升员工技能。 7. **报表统计**:生成各类管理报表,如员工出勤报表、绩效报表等,为企业决策提供数据支持。 从源码的角度看,开发者可以研究其编程...

    高薪程序员必备刷题软件-u-boot:U型船

    【标题】"高薪程序员必备刷题软件-u-boot:U型船",指的是在IT行业中,尤其是嵌入式系统领域,u-boot作为一个重要的组件,对于程序员的技能提升和职业发展至关重要。u-boot全称为“micro-bootloader”,它是一个开放...

Global site tag (gtag.js) - Google Analytics