最近,很多网友问我,怎么才能成为优秀的软件工程师,而不是优秀的码农?这个问题应该是最近这几年程序员的诉求了,估计每个程序员的理想都是做一个高大上的工程师,而不是只会Ctrl+C和Ctrl+V的码农。从我们踏入这个行业开始,我相信大多数人都是差不多的,都是学习编程基础,学习算法基础,学习各个大牛的骚操作,学习优秀框架或者项目中的各种写法等等。

这个时候我们都是码农,是一个处于入门状态的程序员。
当我们学习到一定程度,比如可以独立的完成自己的项目,可以自己尝试着写框架了。这个时候我们就进入到了一个分水岭,也就是大家所提出的问题了。我们是继续做代码的搬运工还是做一个优秀的工程师呢?
这取决于我们每次花多少时间在沟通上,花多少时间在需求分析上,花多少时间在设计和重构上,又花多少时间来做项目总结以及学习等等。
如果我们每拿到一个需求,不管需求是否合理,不与人沟通直接上手写项目。没有框架、没有设计,那么我们写出来的代码最终会拖垮我们自己,这点在需求变化非常复杂的场景(如游戏开发)尤其突出。
完成一个项目后我们又不管不顾直接开始下一个,永远用的都是我们脑海中拿点存货,那么我们永远不可能成为优秀的工程师。
优秀的工程师会在拿到需求的时候跟需求方详细的确认并且进行分析,知道哪些能做哪些又不能实现(或者是项目周期内不能实现),因为优秀的工程师不会只顾自己,他会知道整个团队成员的能力所在,明白什么进度时我们应该做什么事。

优秀的工程师在需求确认后会对花大部分时间来设计架构以及功能切分,然后才开始动手写代码,而且还会适时重构。在项目完成后,优秀的工程师会花一定的时间对整个项目进行总结,知道哪儿还需要改进,哪儿还需要重构,这些都是一个一个的项目经验,都是可以分享也可以反复学习的东西。
优秀的工程师也会在空闲时候进行进一步学习,进一步深造,拓宽自己的视野的同时也让自己时刻处于IT的前沿。
所以你们明白了吗?希望每个程序员都在优秀的工程师这条路上越走越远。

请你努力成为一名优秀的软件工程师,拒绝做优秀的码农!相关推荐

  1. 我与我的职业梦想 – 成为一名优秀的软件工程师

    无知少年对于计算机的热爱,甚至可以追溯到初中时为了弄明白步步高 9188 英语词典学习机中的 RPG 游戏,懵懵懂懂地看着 VB 的语法书:高中时,在全部人都沉浸在游戏的网吧中,看着是似懂不懂的 C ...

  2. 成为一名出色的软件工程师的一个秘诀:阅读代码

    通过养成阅读代码的例程和习惯来成为更好的程序员 这是我偶尔写的系列文章" 给年轻软件工程师的笔记"中 的帖子 . 在 这里 注册 . Redis的代码片段 如果您有一天决心成为一名 ...

  3. 软件测试工程师面试秘籍_成为一名出色的软件工程师的一个秘诀:阅读代码

    软件测试工程师面试秘籍 通过建立例程和阅读代码的习惯来成为更好的程序员 这是我偶尔写的系列文章" 给年轻软件工程师的笔记"中 的帖子 . 在 这里 注册 . Redis的代码片段 ...

  4. 电子工程师自学成才pdf_作为一名自学成才的软件工程师,我在第一个月的工作中所学到的知识

    电子工程师自学成才pdf In this post, I will share my experiences and give advice now that I am six months into ...

  5. 如何成为一名有效的软件工程师

    by Luis Santiago 路易斯·圣地亚哥(Luis Santiago) 如何成为一名有效的软件工程师 (How to become an effective software enginee ...

  6. 如何成为一名卓越的软件工程师

    很多研发人员,在一个公司做几年,从事几年的软件开发工作,能力依然没有提升,职位.工资依如从前.任何公司都存在这样的人,包括BAT.华为等大型公司的人在内,我面试过程中也遇到过各类公司跳槽出来的员工,本 ...

  7. 云巴创始人张虎:一个优秀的软件工程师必然是全栈工程师

    张虎,云巴 (yunba.io) 创始人兼CEO,致力于为开发者提供优质云后端服务.他有十几年的软件研发经验,精通嵌入式系统.服务器端架构.虚拟化等.张虎曾就职于华为.Oracle,他是Oracle ...

  8. 做一名真正的软件工程师

    今天是 10.24,是程序员的节日. 前天我做了一个名为<做一名真正的软件工程师>的分享,表达了一些我的个人观点. 中国的软件研发经历了几个阶段.在 2000 年以前,最先进的软件开发团队 ...

  9. 优秀web前端工程师必备_优秀的Web工程师的技能和素质

    优秀web前端工程师必备 In this one-on-one episode of the Versioning Show, Tim and David talk about what makes ...

最新文章

  1. camx模型_【推荐】基于CAMx的空气质量模拟及污染来源解析技术
  2. CV:计算机视觉技术之图像基础知识(二)—图像内核的可视化解释
  3. Java8新特性之函数式接口
  4. 编译原理(三)之语义分析
  5. leetcode 491. 递增子序列 思考分析
  6. udl 连mysql_自己如何正确获取MYSQL的ADO连接字符串
  7. 实现基于最近邻内插和双线性内插的图像缩放C++实现
  8. kafka in action
  9. 讨一个上海中上条件的老婆的成本 (zz)
  10. 西门子STEP7初学者注意点-仿真模拟
  11. Spring Tool Suite 4(STS)的下载安装
  12. hspice标识符语法
  13. 【IT项目管理】第1章 走进IT项目管理
  14. 在线上课中设备突然关机如何关闭直播
  15. Bootstrap 新手学习手册---环境部署与网格系统
  16. 创新的原则(《创新与企业家精神》彼得·德鲁克)
  17. Wemos D1 Mini / nodeMcu / esp8266 + GUIslice库 驱动ST7789 TFT显示屏
  18. Export file created by EXPORT:V10.01.00 via conventional path
  19. python处理svg_用Python/PIL读取SVG文件
  20. Java开源工具库使用之Apache commons-lang3

热门文章

  1. Kotlin学习总结(1)——Kotlin快速入门
  2. Jenkins学习总结(7)——搭建Jenkins+Maven+SVN+Tomcat持续集成环境
  3. Jenkins学习总结(3)——Jenkins+Maven+Git搭建持续集成和自动化部署的
  4. android log 码率,webrtc之Android视频质量提升:保帧率降码率
  5. Wget 命令用法详解
  6. jsp获取SessionID值
  7. I.MX6 gpio-keys driver hacking
  8. 大话重构连载9:大布局你伤不起
  9. ADO.NET远程访问Access数据库的连接字符串
  10. 面试题目整理--逻辑