软件开发攻略技巧 西安尚学堂

很多人在学习软件开发时很兴奋,为这即将踏入高薪的门槛兴奋不已。孰知软件开发行业水深似海,对于新入门的小白,没练几手,很容易被淹没那大“大海”里。

软件开发攻略

软件开发核心技能:

两个维度:

开拓新的领域;分享已完成的成果。

一、难度系数 >> 1 (新手上路)

1. 完成页面测试;

2. 编写简明的文档;

3. 能够理解基本业务;

4. 日常普通的交流;

5. 下载所需要的软件和工具;

6. 完成简单的脚本实现临时需求。

二、难度系数 >> 2 (亦步亦趋)

1. 完成一个带命令行参数的实用脚本小工具;

2. 完成一个函数或方法的单测;

3. 完成一个服务接口的测试用例;

4. 使用函数来结构化程序的组织;

5. 使用数组、集合、列表、映射等容器来组织程序的数据;

6. 使用系统API或库函数来操作文件与目录;

7. 学会使用工作中需要用到的软件与工具;

8. 搭建软件开发环境,解决其中遇到的困难;

9. 编译和运行应用,部署应用运行的服务器环境。

三、难度系数 >> 3 (初出茅庐)

1. 自己动手实现基本数据结构(数组、链表、栈、队列、二叉树、位图)的基本操作;

2. 自己动手实现基本算法(排序、查找、选择、分治、递归、映射、过滤、聚合、动态规划);

3. 完成一个小改动需求,小的 bugfix 或功能优化,含测试;

4. 编写脚本实现软件开发环境的自动化搭建;

5. 学习和理解业务并梳理成文档;

6. 绘制业务流程图、思维导图等;

7. 理解小组成员的想法和构思,比较顺畅与小组成员交流;

8. 聆听和理解产品需求并能和产品同学好好说话;

9. 参加分享时预先准备, 会上做个发言或提问。

四、难度系数 >> 4 (初露锋芒 – 初级工程师)

1. 权衡优先级,进行一天的工作内容规划;

2. 总结业务、项目与学习实践心得,博客分享赢得读者;

3. 实现有难度的数据结构的算法,比如B+树编程;

4. 能够排查普通或略偏难度的问题或BUG;

5. 能够编写实用而健壮的监控脚本或数据订正脚本;

6. 学习和使用设计模式来改善面向对象程序的结构;

7. 编写实用而得当的业务文档、项目文档;

8. 有能力与团队成员就技术工程议题进行交流讨论并发表见解;

9. 能够理解比较复杂的业务并将其分解为可以规划和实施的子业务;

10. 理解项目管理方法并能适当调节个人活动与项目总体进度保持同步;

11. 理解产品设计与开发要点并能有效实现;

12. 理解和完成前后端组件的交互、前后端团队的协作;

14. 使用通讯工具简洁地私人答复和公开表达想法;

15. 组织团建、预定会议室并主持团队周会。

五、难度系数 >> 5 (风雨兼程 – 中级工程师)

1. 实现复杂结构的编程, 复杂结构可能是List, Map 嵌套的复合结构,或者图结构;

2. 实现含算法的综合编程, 比如迷宫回溯(含GUI);

3. 实现并发异步的编程, 比如 Ajax 编程, 并发实现词典的单词统计计数;

4. 实现针对特定需求的可扩展的微框架的设计与实现;

5. 编写测试框架和测试用例,实现可重复自动化测试;

6. 理解分布式系统的整体架构设计,并完成普通业务开发;

7. 对代码质量有比较深入的理解,能够坚持良好的编程风格;

8. 完成一项需求的概要设计和详细设计(含数据库设计);

9. 绘制子系统或子模块的整体框架图或架构设计图;

10. 完成一项之前没有做过的技术工程工作,比如线上大流量服务分流;

11. 能够排查比较深层次的业务方面的问题和BUG并进行修复;

12. 确保负责的子系统的发布平滑完成;

13. 参与和完成跨团队中型项目的开发,并参与第一次凌晨发布;

14. 研究一个模块的源代码实现;

15. 快速学习和应用一门新技术,比如HBase ;

16. 能够说服和邀请团队成员加入自己开展的项目;

17. 理解、研究和讨论一项重要议题,并在会议上做出适当的发言;

19. 完成一次良好的晋升面试;

20. 对一个业务主题做仔细的调研,并完成项目立项工作;

21. 对一个中型需求做仔细的设计,并邀请团队成员进行设计评审;

22. 在团队中分享在学习工作中掌握的新思想、新技术、新成果;

23. 规划个人的季度总体目标及实施计划;

24. 执行个人的季度总体目标及实施计划。

六、难度系数 >> 6 (激流勇进 – 高级工程师)

1. 主导完成一个中型需求的开发,涉及需求理解、详细设计与实现、联调沟通、测试部署、线上运维等综合技能;

2. 实现分布式系统下的复杂业务开发,涉及事务、并发控制等;

3. 完成中大型跨团队项目的开发与合作;

4. 独立负责一个中小系统的日常开发与维护工作;

5. 深入到系统底层或框架内部细节排查细微的问题或BUG;

6. 评估多个子应用或服务之间的依赖关系并保证无故障同步升级发布;

7. 对系统的业务与模型进行抽象和解耦,实现可扩展和可维护的设计;

8. 绘制应用的整体框架图或架构设计图,从整体上思考问题的解决;

9. 理解和把握公司、部门、团队的总体目标及方向;

10. 规划个人的年总体目标及实施计划;

11. 执行个人的年总体目标及实施计划;

12. 规划小组的整体图景和方向;

13. 执行小组的整体图景和方向;

14. 指导初级工程师完成日常技术工作创造贡献;

15. 创造性地使用新方法解决问题改善工作效率;

16. 完成普通项目的技术选型;

17. 推进跨团队事务的如期完成;

18. 流畅地与团队成员、TL、管理层进行交流和汇 。

七、难度系数 >> 7 ( 劈波斩浪 – 专家,基层管理 )

1. 主导完成一个独立子业务的服务化迁移;

2. 主导完成一个独立子系统的重构;

3. 有影响力地演示团队的工作成果与公司的品牌形象;

4. 善于从整体上思考问题的解决方案并形成考虑周全的开放方案;

5. 组建精悍团队来做有意义的项目或产品;

6. 规划跨业务团队的总体目标及实施计划;

7. 带领小组成员实现季度、年规划目标;

8. 为重大项目做技术选型、架构设计或技术咨询;

9. 指导中高级工程师做出优秀的工作成果和贡献;

10. 在某个专业技术领域发挥着突出的技能和贡献;

11. 综合运用知识、技能、经验、直觉等完成技术难题的攻克,比如交易引擎的设计与开发;

12. 综合运用知识、技能、经验、直觉等创造性地改善团队生产效率,比如自动化生成测试。

八、难度系数 >> 8 (飘浪江湖 – 架构师,中层管理)

1. 分析市场发展动向和竞争同行动态并形成业界认可的参考价值高的 告;

2. 分析国家政策变化及行业发展变化并形成业界认可的参考价值高的 告;

3. 塑造个人的行业影响力并为公司带来有益影响;

4. 会晤某高层人士洽谈合作事宜;

5. 为跨业务团队大型项目做架构设计或技术咨询;

6. 领导部门团队成员实现部门季度、年规划目标;

7. 持续领导部门级的发展战略和实施计划的执行。

九、难度系数 >> 9 (雾里看花 – 参谋长, CXO)

1. 实现跨部门的季度、年规划目标;

2. 持续领导跨部门的发展战略和实施计划的执行。

十、难度系数 >> 10 (不归之路 – 创始人)

1. 实现整个组织的季度、年、长远规划目标;

2. 持续领导整个组织完成有意义的季度、年度目标,并为 会承担企业责任;

3. 实现组织的持续盈利模式;

4. 吸引和说服投资者持续投资。

西安尚学堂 http://www.xasxt.com/

?

Java零基础就业班 最新开班日期:9月中旬

上课地址:陕西省西安市高新区科技二路西安软件园天泽大厦五楼

咨询电话:029-62258374 QQ 2145598324

?

?

招生对象:

1. 零计算机编程基础学

2. 对行业不满意人士

3. 跨专业编程爱好者

4. 在校大学生实训

?

Java零基础班,10年 Java 以上开发经验技术讲师、架构师、行业大牛,亲自纯面授课程,手把手教你写编程。

?

9月新班免费试听课程已就绪,7天免费听课,体验Java乐趣。

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2019年8月2日
下一篇 2019年8月2日

相关推荐