理解软件行业职位的职责

news2024/11/24 12:46:01

对于职位的一些个人看法 .......

目录

1.初级程序员(PG )

2.中级程序员(SE)

3. 高级程序员(SSE)

4.技术经理(TL)

5.技术总监(VP)

6. 首席技术官(CTO)

7. 架构师,软件架构师(SA)


1.初级程序员(PG )

也叫Junior Programer ,初级程序员的主要职责

  • 能独立完成一些简单编码任务,如功能开发,接口开发
  • 能在指导下能够承担一些比较复杂的设计任务或者开发任务

走出校园后的三年是程序员的门槛, 这个阶段会淘汰一些不适合写代码的人,以及一些迷茫过后不愿意在此行业发展的人。 在这个阶段,开始知道如何团队协作;在这个阶段,开始了解软件工程并参与其中;在这个阶段,开始养成自己的编码习惯和处理问题的思维以及方式;在这个阶段,积累大量的开发经验。在这个阶段培养员工会花费很大代价,因此很多公司更愿意直接招募有2-3年工作经验的开发人员

2.中级程序员(SE)

也叫 Software Engineer ,中级程序员的主要职责

  • 独立完成需求拆分,程序设计,编码实现,程序测试,线上部署等工作
  • 能够熟练使用常见的技术框架,并应用到项目中

第二个门槛一般是五年。一些人除了完成工作在空余的时间基本不会研究别的东西,这些人年纪大一些就会被更年轻的人替换掉。一些人在三年里处理写代码还研究一些新技术,扩展自己的技术栈。在技术方面可以独挡一面。所以这个阶段重点是坚持学习

3. 高级程序员(SSE)

也叫Senior Software Engineer, 高级程序员的主要职责是:

  • 实现复杂功能,编写核心代码。
  • 处理线上 bug,解决技术难题。完成系统优化
  • 独立完成负责需求拆分,独立完成模块设计系统设计

4.技术经理(TL)

也叫Team Leader 技术经理的主要职责:

  • 人员管理:团队搭建、人员招聘、人员培养。
  • 项目管理:确保项目的按时交付,建立管理机制;
  • 任务管理:开发任务分派。开发工作量评估、分派,最大化资源利用率;
  • 质量管理:代码质量提升。Code Review、编码规范、线上 bug 分析;

核心能力竞争力:

1. 熟悉软件工程:把握软件研发的关键流程例如:需求分析,产品设计,软件研发,产品验收等环节,明确关键的角色为此负责,比如需求分析和产品设计必须经过产品负责人的审查,软件设计,编码和测试必须经过技术负责人和对应模块负责人的审查等等。

2. 提升工作效率:让大量重复性高的环节自动化,包括文档工具,需求卡片的自动化状态流转,选择 IDE 和代码审查工具,构建自动化测试流水线和基础设施等。将重复性高的工作自动化来提升效率。

3.重视代码审查:代码是软件研发环节最核心的交付物,也是工程师之间需要协作的关键之一。作为架构师需要能够发现并且持续优化涉及代码审查的环节,这方面 Google 的代码审查实践给我们提供了非常好的参考。

5.技术总监(VP)

或者叫技术VP (Vice President of Technical ),确保工程团队中的每一个人成功,解决成功过程中遇到的问题,将压力档在技术团队之外, 技术总监的主要职责是:

  • 搭建公司技术平台部,统一技术栈,(之前的空降的一个CTO并不支持统一技术栈,并砍掉了相关的计划,我不太理解,如果看到文章的你了解原因,请帮我解惑)
  • 建立产品研发体系,让技术团队可持续性地快速交付;
  • 管理和协调多条产品线,打造明星产品;
  • 建立技术壁垒,形成技术竞争力;
  • 财务管理:人员投入,原生设计, 设备等项目费用,
  • 战略发展:CETO ,市场VP等其他人员沟通讨论战略

几点核心能力:

1.理解业务:技术的核心是为了让业务获得成功,架构是技术的核心之一,所以架构师一定要加强对业务的深入理解,了解业务的痛点,偏向业务的架构师甚至能够预测业务的发展趋势,提前在业务需要的技术方向进行适当的准备。

2.提炼需求:很多时候用户提出的需求未必是真正的需求。面对需求,要养成多思考的习惯。思考需求的场景是什么,思考需求背后需要解决的问题是什么,来帮助我们识别并解决真正的需求。

6. 首席技术官(CTO)

CTO(Chief Technology Officer) 的主要职责是:

  • 技术赋能商业。敏锐的商业洞察、深入的产业研究、参与公司战略规划,技术引领业务增长,通过技术和产品实现战略落地。
  • 技术趋势研究。思考未来 3~5 年的技术发展趋势,以及新技术发展给企业带来的机遇和风险,为企业提前布局。
  • 技术治理体系。持续的过程改进、高效的研发流程、稳定的交付质量、高可用的系统。
  • 组织与文化。建设学习型组织、自我完善型组织,建立符合企业特色的文化氛围。
  • 技术愿景:规划技术愿景

7. 架构师,软件架构师(SA)

Software Architect软件架构师的主要职责是:

  • 业务架构设计和实现。根据业务规划和应用场景,设计切合当前业务要求,并且具备一定前瞻性的应用架构、类、接口、业务抽象及业务建模等。
  • 架构设计和实现。识别非功能性需求,如性能、可扩展性、安全性、高可用及易部署等。
  • 系统重构设计


上一篇:Intellij IDEA 双击启动报错ClassNotFoundException

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/876808.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

综述:计算机视觉中的图像分割

一、说明 这篇文章是关于图像分割的探索,这是解决计算机视觉问题(如对象检测、对象识别、图像编辑、医学图像分析、自动驾驶汽车等)的重要步骤之一。让我们从介绍开始。 二、图像分割介绍 图像分割是计算机视觉中的一项基本任务,涉…

2021年03月 C/C++(二级)真题解析#中国电子学会#全国青少年软件编程等级考试

第1题:石头剪刀布 石头剪刀布是常见的猜拳游戏。石头胜剪刀,剪刀胜布,布胜石头。如果两个人出拳一样,则不分胜负。 一天,小A和小B正好在玩石头剪刀布。已知他们的出拳都是有周期性规律的,比如:“…

OSCS开源安全周报第 55 期:JeecgBoot 远程代码执行漏洞

本周安全态势综述 OSCS 社区共收录安全漏洞 11 个,公开漏洞值得关注的是 JeecgBoot 远程代码执行漏洞、企业微信私有化后台API未授权访问漏洞、WPS Office 存在代码执行漏洞(MPS-3pcb-l4mv)、Microsoft Exchange Server 远程代码执行漏洞(CVE-2023-38182)、Smartbi…

SDK是什么,SDK和API有什么区别

SDK(Software Development Kit)是一种开发工具包,通常由软件开发公司或平台提供,用于帮助开发人员构建、测试和集成特定平台或软件的应用程序。SDK 包含一系列的库、工具、示例代码和文档,旨在简化开发过程并提供所需的…

老网工必备好物,分享15个网络监控神器

下午好,我的网工朋友。 近年来,随着虚拟、云和边缘网络的增加,网络监控工具已经显得越来越重要。 在当今大多数企业中,监控混合IT环境中的网络流量对于主动网络管理至关重要。 无论是检测行为异常、占用带宽、应对新威胁&#…

【学会动态规划】最大子数组和(19)

目录 动态规划怎么学? 1. 题目解析 2. 算法原理 1. 状态表示 2. 状态转移方程 3. 初始化 4. 填表顺序 5. 返回值 3. 代码编写 写在最后: 动态规划怎么学? 学习一个算法没有捷径,更何况是学习动态规划, 跟我…

【PDF.js】PDF.js的简单使用与CDN加速遇到的问题

PDF.js的简单使用与CDN加速遇到的问题 一、PDF.js是什么?二、PDF.js三、 选择PDF.js的版本下载1. Prebuilt (现代浏览器) *作者选择2. Prebuilt (历史淘汰浏览器)3. Source 来源4. 通过CDN加速5. 文件树PrebuiltSource 6. 尝试查看器 四、选择文档(不是使…

IC人必看| 模拟IC方向面试常考问题及答案汇总(二)

有不少小伙伴说还想要更多模拟IC方向的面试题目,这不就来了!(文末可领全部面试题目) 1. Bandgap 里有几种反馈?原理是? 正反馈和负反馈。 2. 负反馈种类?负反馈的优点? 种类&am…

mqttfx连上OneNET生成token时的一大坑,报用户名或密码错误

整个流程如下连接: MQTT.fx和MQTTX 链接ONENET物联网开发平台避坑细节干货。 其中在生成token时,搞了半天在连接后都会报用户名密码错误 最后发现是格式问题,输入所有字符后一定要双击看是否可以全选中,可以全选中说明字符的格式…

【boost网络库从青铜到王者】第二篇:asio网络编程中的socket的监听和连接

文章目录 1、网络编程基本流程2、终端节点endpoint的创建2.1、客户端终端节点endpoint的创建2.2、服务器终端节点endpoint的创建 3、服务器与客户端通信套接字socket的创建4、服务器监听套接字socket的创建5、绑定accpet监听套接字6、客户端连接指定的端点7、服务器接收连接8、…

H5 和小程序的区别

什么是小程序? 从“微信之父” 张小龙的定义里,我们可以了解到,小程序其实就是内嵌在微信,不需要安装和卸载的一种新应用形态。它具备的两个强属性:提高效率,用完即走!因此小程序的设计以轻便、…

vue element 多图片组合预览

定义组件&#xff1a;preview-image <template><div><div class"imgbox"><divclass"preview-img":class"boxClass"v-if"Imageslist 3 ||Imageslist 5 ||Imageslist 7 ||Imageslist 8 ||Imageslist > 9"&…

SQLyog中导入CSV文件入库到MySQL中

1.在数据库中新建一个表&#xff0c;设置列名&#xff08;与待导入文件一致&#xff09;&#xff0c;字段可以多出几个都可以 2.右键表名&#xff0c;导入- - >导入使用本地加载的CSV数据 选择使用加载本地CVS数据 3.指定好转义字符&#xff0c;将终止设置为,号(英文状态下…

微型导轨在包棉机中的作用

随着工业革命的开展&#xff0c;各种人工智能设备的迅猛发展&#xff0c;为了适应高速发展的工业自动化&#xff0c;越来越多的工业企业开始采用微型导轨&#xff0c;尤其是在包棉机中的应用。 包棉机是一种用于加工棉花的机械设备&#xff0c;它的主要功能是将原始棉花经过清洁…

zabbix监控tomcat

一、zabbix监控Tomcat1.1 zbx-agent配置1.1.1 关闭防火墙&#xff0c;将安装 Tomcat 所需软件包传到/opt目录下1.1.2 安装JDK1.1.3 设置JDK环境变量1.1.4 安装启动Tomcat1.1.5 配置 JMX 1.2 zbx-server配置1.2.1 安装zabbix&#xff08;省略&#xff0c;可看上一篇博客&#xf…

【校招VIP】前端JS语言考点之px rem等单位

考点介绍&#xff1a; rem vm等问题是前端面试里的高频题型。但是不少同学并不能很清楚的说明为什么在有px单位之后&#xff0c;还需要rem单位&#xff1f;往往会往不对的自适应方向回答。 作为基础性问题&#xff0c;只要回答不出来&#xff0c;面试就通过不了&#xff0c;需要…

在vue中使用swiper轮播图(搭配watch和$nextTick())

在组件中使用轮播图展示图片信息&#xff1a; 1.下载swiper,5版本为稳定版本 cnpm install swiper5 2.在组件中引入swiper包和对应样式&#xff0c;若多组件使用swiper&#xff0c;可以把swiper引入到main.js入口文件中&#xff1a; import swiper/css/swiper.css //引入swipe…

树莓派3B CSI摄像头配置

1.硬件连接 1、找到 CSI 接口(树莓派3B的CSI接口在HDMI接口和音频口中间)&#xff0c;需要拉起 CSI 接口挡板,如下&#xff1a; 2、将摄像头排线插入CSI接口。记住&#xff0c;有蓝色胶带的一面应该面向音频口或者网卡方向&#xff0c; 确认方向并插紧排线&#xff0c;将挡板…

基于Spring Boot的高校图书馆管理系统的设计与实现(Java+spring boot+MySQL)

获取源码或者论文请私信博主 演示视频&#xff1a; 基于Spring Boot的高校图书馆管理系统的设计与实现&#xff08;Javaspring bootMySQL&#xff09; 使用技术&#xff1a; 前端&#xff1a;html css javascript jQuery ajax thymeleaf 微信小程序 后端&#xff1a;Java sp…

springBoot 集中配置管理

springBoot 集中配置管理 项目配置如果上线项目&#xff0c;运维或者开发者可以直接和jar包同目录下创建文件&#xff0c;然后更改属性 项目配置 创建文件&#xff0c;调整配置如果上线项目&#xff0c;运维或者开发者可以直接和jar包同目录下创建文件&#xff0c;然后更改 属…