做一名真正的软件工程师
今天是 10.24,是程序员的节日。
前天我做了一个名为《做一名真正的软件工程师》的分享,表达了一些我的个人观点。
中国的软件研发经历了几个阶段。在 2000 年以前,最先进的软件开发团队可能在电信设备制造商,我印象中华为一直被认为是中国最大的软件企业。在 2000 年后,大批的互联网企业成长起来,培养了大批的软件开发人才。现在大量的互联网企业在向 toB 转型,这为中国软件研发的提升提供了一个新的机遇。
很多软件工程师缺乏对于软件工程方法论的学习,尤其是缺乏对于软件研发“原则”的了解。没有原则会导致在工作中随意妥协,进而导致低效和低质的工作。《软件开发的201个原则》对于软件开发中的重要原则做了很好的总结。我非常有幸在 2000 年就看到这本书,少走了很多弯路。
可读和可维护性是对高质量软件的基本要求,而这点常常被忽视。实现“漂亮”的代码其实并不难,我感觉出现问题的主要原因是缺乏对这些问题的重视。大家老是希望去找一些“高大上”的方法,其实写好代码的方法非常简单,就看你是否能够真正认真的去落实。
从我的观察看,中国大量的软件从业者是缺乏设计能力的,这导致无法从从“开发者”向“软件工程师”跳跃。而设计能力的欠缺,直接影响需求分析的质量,导致大量后续的研发资源被浪费;同时,低质量的设计,必然导致低质量的系统。
项目管理对于软件项目的成功具有非常决定性的作用。项目管理是被大量软件工程师所忽视的。要做好项目管理,需要具有“知识社会”的先进理念,提升对于专业的尊重,降低对于权力等级的迷信;提高软件工程师的自我管理意识和能力。
开源已经成为软件研发的重要方式。开源不仅仅是把源码开放出来,开源涉及到文化、生态、标准。不能仅仅从技术的角度来看待开源,更需要从人文社会科学的角度来学习和参与开源。《Working in Public》是关于开源的一本很好的书。
“转型升级”是目前中国经济的主题,也是中国软件业的主题。“内卷”其实来自于低水平的重复建设,中国非常缺乏高质量的软件。从“开发者”升级为“软件工程师”是解决内卷的根本之道。
中国 400 万的软件工程师的提升对于中国有巨大的意义。在某种意义上,宋朝的张载所说的几句话对于中国的软件工程师也是适用的。
转载自公众号:章老师说
点击进入获得更多技术信息~~
做一名真正的软件工程师相关推荐
- 如何成为一名卓越的软件工程师
很多研发人员,在一个公司做几年,从事几年的软件开发工作,能力依然没有提升,职位.工资依如从前.任何公司都存在这样的人,包括BAT.华为等大型公司的人在内,我面试过程中也遇到过各类公司跳槽出来的员工,本 ...
- 电子工程师自学成才pdf_作为一名自学成才的软件工程师,我在第一个月的工作中所学到的知识
电子工程师自学成才pdf In this post, I will share my experiences and give advice now that I am six months into ...
- 我与我的职业梦想 – 成为一名优秀的软件工程师
无知少年对于计算机的热爱,甚至可以追溯到初中时为了弄明白步步高 9188 英语词典学习机中的 RPG 游戏,懵懵懂懂地看着 VB 的语法书:高中时,在全部人都沉浸在游戏的网吧中,看着是似懂不懂的 C ...
- 如何成为一名有效的软件工程师
by Luis Santiago 路易斯·圣地亚哥(Luis Santiago) 如何成为一名有效的软件工程师 (How to become an effective software enginee ...
- 如何做一名优秀的电子工程师[zz]
如何做一名优秀的电子工程师 成为一个杰出工程师最重要的因素就是"热爱自己的职业".毕竟兴趣是最好的老师,许多优秀的电子工程师都是从小作为电子爱好者的.爱好不仅要体现在行动中 更要深 ...
- java工程师js_Ajax, 励志做一名Java全干工程师
$(励志做一名Java全干工程师) 前言:JS,JSP,JQ区别? JSP:JavaServer pages,他是作用于后端的技术,基于java的语言,混合了html,动态的调用html语句,实现动态 ...
- 软件测试课程体系应该是什么样的,软件测试是什么?怎样做一名优秀的软件测试工程师?...
原标题:软件测试是什么?怎样做一名优秀的软件测试工程师? 做软件测试的你,也许已经找到了满意的工作,也许才刚刚开始,还在摸索着前行的道路,也许一知半解,还在犹豫是否要入行.还有很多人不懂,软件测试到底 ...
- 做一名优秀的软件开发qa_如何成为一名优秀的开发人员
做一名优秀的软件开发qa As a PHP developer, or any kind of developer as a matter of fact, you need to constantl ...
- 成为一名出色的软件工程师的一个秘诀:阅读代码
通过养成阅读代码的例程和习惯来成为更好的程序员 这是我偶尔写的系列文章" 给年轻软件工程师的笔记"中 的帖子 . 在 这里 注册 . Redis的代码片段 如果您有一天决心成为一名 ...
最新文章
- AI一分钟|AI聊机器人“Shibuyu Mirai”获日本居住权,传今日头条3亿美元收购Faceu激萌
- 自然语言处理NLP之BERT、BERT是什么、智能问答、阅读理解、分词、词性标注、数据增强、文本分类、BERT的知识表示本质
- 独家 | 7招帮你打造完美数据科学GitHub作品集!
- 【iOS】Xcode 使用 CocoaPods 导入第三方库后没有提示
- 浅谈UML的概念和模型之UML视图
- 如何判断输入的是字符还是数字_[Leetgo]判断字符串是否为数字
- 华为暂没有推出鸿蒙手机计划;苹果否认 iPhone 辐射超标;Kotlin 1.3.50 发布 | 极客头条...
- 智能一代云平台(六):移动开发之Ionic研究
- 从随机数生成到随机采样的C++实现
- ORACLE 字符串操作
- GGally与pairs相关关系图_史上最全(二)
- heidisql 命令保存blob_git常用命令总结
- python命名元组namedtuple_Python命名元组--命名元组,Pythonnamedtuple,具名
- 高mysql千万级大数据SQL查询优化几条经验
- 聂微东:《暗时间》读书笔记与读后感 - 博客 - 伯乐在线
- Python 分析《三国演义》看司马懿三父子如何用计谋干掉了曹操后代
- latex中极限号下边怎么打_latex 极限下标
- 从零开始学习node.js
- 石溪分校 计算机研究生专业,纽约州立石溪分校 - 985本科申请纽约州立大学石溪分校计算机研究生容易吗?要准备什么?还有如果成功了好毕业吗??...
- win10用易语言需要C环境,win10系统易语言打开支持库配置就崩溃的具体教程
热门文章
- 十 Java集合框架(2):Set接口
- 不用计算实现 图片懒加载
- 完整版使用Shell脚本在多个服务器同时实现Mysql建表语句和删除表
- Golang中支持可变参数
- 开源的视频笔记合集: 陌溪 / LearningNotes
- Spark on k8s提交测试任务失败报错解决办法:User “system:serviceaccount:default:default“ cannot get resource “pods
- CentOS添加一个新的硬盘、添加分区到挂载的过程
- Linux报错:Syntax error: “(“ unexpected解决办法
- Scala函数简化写法
- nginx反向代理tomcat