`
ideage
  • 浏览: 326180 次
社区版块
存档分类
最新评论

软件工程师进化论

阅读更多

进入软件开发这个行业很久了。思考下该怎么进化。

每个人每天可能都在进化。

如果你方向变了,那就GameOver(一个游戏的开始,就是另一个游戏的结束)。

 

 

1.入门

 

实际上,我们都是从HellWorld开始的。那时候,我们不会写代码。我们比葫芦画瓢。我们要在屏幕上输出一行字符:HellWorld,这是我们的需求。我们录入代码,实现程序,进行编译或者直接运行。我们开始喜欢这个玩具了:他可以按我们的思路去输出,不同于电视机,我们只能被动的看。渐渐的,我们学习了三种结构,理解了结构化的软件构建过程。我们学会了一门语言;这就是说,我们入门了。我们花费

 

2.精通和深入

 

我们开始深入研究一门语言了。我们学习了数据结构,学习了算法,学习了计算机的原理。我们举一反三,我们发现:计算机语言很简单了。我们可以解决简单问题:数学题。我们发现,很多实际的问题不在语言中。它们潜藏于平台,潜藏于更多的应用库。我们为了GUI,开始研究Win32;为了WindowsDNA,学习了DCOM,为了企业的Web,学习了J2EE;为了TCP/IP通讯,钻研ACE,为了简化工作,我们开始使用Python脚本。这里我们花费了大量时间,可能从此认为自己无法继续,不是这块料了。也可能无师自通,如鱼得水。

 

3.博采众家,提出意见

 

你基本算牛人了。做什么软件,你仅仅需要的是时间和心情。不会的,你一叶知秋,通过管中窥豹,也能洞晓全局。你毕竟有了10多年甚至数10年的从业经历。看的多了,你明白了。但你还是个软件工程师。你想改进你的工作。你查阅资料,总体研究,发现了你的办法。可能你解决的问题太小:如果用金钱衡量,一文不值。但你却是真正的明白,并且改进了。技术,永远在进步。

 

4.转变思路重新立意

 

你明白了技术的本质,不再技术而技术了。因为技术是为了用的。如同超级的侠客,手中无刀,心中有刀,任何工具,既然信手拈来,解决问题于无形,何必拘泥呢。更多时候,你该需要带领一个团队,而不是独立作战。王国可能大,也可能小,但你的确需要那么做了。搭班子,定战略,带队伍,一个老前辈说的。我们将要用软件技术改变世界了。

 

 

 

你进化了吗?你有什么进化思路吗?欢迎告诉我!

 

 

0
1
分享到:
评论

相关推荐

    软件工程理论、方法与实践答案 孙家广

    在现代软件开发中,软件工程师需要掌握的知识面越来越广泛,不仅要懂得编程和软件开发的技能,还要了解项目管理、软件测试、软件维护、软件部署等各个方面的知识。随着敏捷开发、DevOps等方法论的流行,软件工程领域...

    系统集成项目管理工程师软件考试口诀

    【系统集成项目管理工程师软件考试】是针对信息技术领域中系统集成项目管理的专业认证,旨在考核考生对于项目管理的理论知识和实践经验。以下是该考试的一些核心知识点: 1. **论文写作要点**: - 大标题要精准...

    高级软件工程ppt111

    1.1 软件工程师的角色定位 软件工程作为计算机科学的一个分支,专注于利用计算机硬件、编译器、操作系统和编程语言作为解决问题的工具。它与计算机科学的关系是互补的,计算机科学关注基础理论和底层技术,而软件...

    软件工程思想

    未来的软件工程师不仅要掌握扎实的工程知识,还需要具备跨学科的思维能力,以及对新技术的敏感度和适应力。《软件工程思想》虽然出版已有数年,但其核心理念和方法论至今仍具有重要的参考价值,对于指导现代软件开发...

    Software Engineering软件工程

    《软件工程》这本书由Ian Sommerville撰写,其第九版由Addison-Wesley出版社出版...通过学习这本书,读者可以全面掌握软件项目从策划、开发到维护、演进等各个环节的知识,为成为一名合格的软件工程师打下坚实的基础。

    软件测试和软件测试面试题 (1).pdf

    ### 软件测试及其面试知识点详解 #### 一、软件测试概述 软件测试是确保软件质量和可靠性...同时,随着技术的不断发展,软件测试领域也在不断进化,持续学习新的技术和方法对于成为一名优秀的软件测试工程师至关重要。

    软件工程第十三章.pdf

    3. 计算机辅助软件工程工具(CASE工具)的作用和分类,以及它们如何帮助软件工程师提高开发效率。 4. 软件开发模型的比较,例如瀑布模型、迭代模型、螺旋模型等,以及它们各自的优势和适用场景。 5. 软件项目管理的...

    软件工程领域大牛Claire Le Goues的CV letter

    3. 工业界经历:Claire Le Goues在微软研究院和IBM有工作经验,她在IBM的工作职位包括软件工程师以及架构工作台的研究实习生。在微软研究,她加入了软件工程研究小组。 4. 荣誉与奖项:Claire Le Goues获得了多项...

    MAC_实用软件工程方法模拟题

    在这个阶段,软件工程师会进行系统建模,定义软件的范围、约束及功能概述,但不包括具体的数据库结构设计和代码编写。 ### 软件开发要素 软件开发的成功依赖于多种要素的协同作用: - **开发人员的团队组织**:...

    HyperLynx入门指南设计1.pdf

    HyperLynx是一款用于电路板设计和分析的软件,由Mentor Graphics公司开发。它广泛应用于高速数字和模拟电路设计领域,尤其适合于信号完整性和电源完整性分析。本入门指南将介绍HyperLynx软件的基本使用方法,特别是...

    软件工程知识点总结

    ### 软件工程知识点总结 #### 一、软件工程定义与原则 ...软件工程师需要掌握各种方法论和技术工具,以便有效地进行软件开发和管理。随着技术的发展,软件工程也在不断进化,以适应日益复杂和变化多端的需求。

Global site tag (gtag.js) - Google Analytics