`
- 浏览:
23948 次
- 性别:
- 来自:
北京
-
我记不得自己是什么时候成为软件设计师的,我也不知道是不是拿到工程师证书就表示了我是软件设计师。可能程序编多了就成为软件设计师了。我见过许多软件开发人员,不知道称他们是程序员还是软件设计师,有时他们自己都不能确认自己是不是软件设计师,这样会对其自身成长是不利的。那么软件设计师和程序员区别究竟在何处?软件设计师的标志是什么呢?今天我就静下心来好好地思考这个问题。
首先要说的是,各个软件公司,各个企事业单位的从事软件岗位设置是不太相同的,凡是明确软件设计师职称或相应岗位的同仁应该视为软件设计师。当然这个软件设计师称谓比较正式,实际中也有其他软件工程师、项目经理(从事软件设计工作的)、设计师等其他称谓。一般而言,软件设计师的工资待遇也相对比程序员要高一些,有的甚至是高了许多。
有的IT同仁可能没有软件设计师的头衔,没有拿到软件设计师的工资,但是从事了软件设计师的工作。我们这里也把他称之为软件设计师。很多人名不符实,而我只要有实就行了。
软件设计师从本质上来说,就是把一个项目中的需求变成可编程实现的设计方案。他对上面对的是项目需求,对下面对的编程,自己则是需求和编程中间的桥梁。这个桥梁就是设计方案。
当一个IT人员在从事编写软件设计方案的时候,无论他是否有软件设计师头衔,他都是从事软件设计师之实。我在以前随笔中谈论过中国式的“全能型”程序员。这些程序员也是软件设计师。
长期实践中我认为软件设计师的标志就是能够编写软件设计方案。软件设计师主要考虑项目做什么,程序员主要考虑项目做什么的具体实现。大凡在考虑项目做什么,怎么做的人都应该归纳于软件设计师的范畴。按照设计方案通过编程实现的人应归纳于程序员范畴。在很多情况下一个人可能有两个角色。在不同的企业软件设计师也会进一步细分,例如,需求分析师,构架设计师,软件设计师等等。
很多程序员埋头于自己的开发,设计和编程的角色不停的转化,甚至混为一谈,统称开发人员。这种情况对于外部对自己评价是没有什么关系的,但是,对于自己的成长和水平提高是有影响的。如果一个开发人员能够明确软件设计师的标志,知道自己的角色和角色的职能,那么我想他的开发工作一定会比以前更加出色。
还有一些程序员,也编写过设计方案,也考虑一些算法和技术实现。但是,主要工作还是编程,大部分时间还是编程,思维惯性和重点还在编程上,那他就不能称之为软件设计师。
软件设计师的具体标志:
1、 编写软件设计方案
2、 思维惯性和重点放在需求分析和功能设计上
3、 更多考虑是软件构架和主要算法。
其他还有一些标志:
1、 和用户打交道比较多
2、 要学习业务知识和理解业务知识
3、 收入相对高一些。
4、 有其他程序员实现他的设计
5、 相对宏观多一些,微观少一些。
6、 编写过许多程序,有大量的编程积累
7、 参与过或主持过许多大大小小项目的开发。
有了软件设计师标志之后,我们IT开发人员,可以对照一下,看看自己是否软件设计师,看看是否已经在向软件设计师靠拢。这样IT人员可以客观定位自己,让自己的程序编的最好,让自己的方案设计的最好。
分享到:
Global site tag (gtag.js) - Google Analytics
相关推荐
### 软件设计师知识点详解 #### 一、计算机系统知识 ##### 1.1 计算机硬件基础知识 **1.1.1 计算机系统结构** - **计算机的发展历史** - 1946年,世界上第一台电子计算机ENIAC问世,标志着计算机时代的开端。 ...
根据给定文件的信息,我们可以...综上所述,这份文档不仅涵盖了计算机组成原理的基础知识,还涉及了中断处理机制、系统可靠性以及软件工程和版权法律方面的内容,为准备软件设计师考试的考生提供了全面的知识体系梳理。
尽管架构师的工作更多地涉及到系统设计和决策,但成为一名好的架构师往往始于成为一名出色的程序员。编程能力是架构师的基础,因为这有助于他们深入理解技术细节,更好地评估技术选择,以及解决实际开发中遇到的问题...
### 软件设计师选择题速成(乱序)知识点详解 #### 一、计算机组成与体系结构 在计算机科学领域,计算机组成与体系结构是理解计算机如何运作的基础。这部分内容涉及了计算机内部的主要组件及其功能,对于软件设计...
- **职业生涯初期**:温伯格的职业生涯始于1956年,最初是一名软件开发员,后来成为系统设计师、软件项目经理、大学教授,并最终成为IBM公司的软件课程设计者。 - **咨询事业**:1969年后,温伯格与其身为人类学家的...
### 2016年下半年软件设计师上午真题及答案解析 #### 1. 指令与数据的区分 **题目解析:** 在程序运行过程中,CPU需要将指令从内存中取出并加以分析和执行。CPU如何区分在内存中以二进制编码形式存放的指令和数据...
软件设计师在备考过程中需要掌握计算机系统的基础知识,包括CPU的功能和组成、数字编码、浮点数、校验码以及计算机系统的结构、分类和性能。以下是对这些知识点的详细阐述: 1. **CPU功能与组成**: CPU是计算机的...
设计师需要深入理解软件的功能,与程序员和用户进行沟通,创建出直观、独特的框架。设计应注重简洁,避免无用的装饰,合理利用屏幕空间,并适应不同分辨率。主菜单、滚动条和状态栏的位置应遵循用户习惯,增强使用...
达到第五阶段的程序员已经超越了单纯的技术层面,他们能够从全局视角出发,设计和构建复杂的系统架构。这一阶段的程序员不仅仅是技术专家,也是能够领导团队完成大型项目的领导者。他们能够准确地评估现有技术方案的...
### 软件设计师专题01:计算机系统知识 #### 计算机硬件基础知识 **1.1 计算机系统结构** 计算机的历史可以追溯到1946年,世界上第一台电子计算机ENIAC的诞生标志着现代计算机时代的开端。自此以后,计算机技术...
2023年软件设计师复习笔记重点总结 计算机系统基础知识: * CPU 功能:程序控制、操作控制、时间控制、数据解决 * 组成:运算器(算术逻辑单元 ALU,累加寄存器 AC,数据缓冲寄存器 DR,状态条件寄存器 PSW),...
这个模板不仅适用于编程岗位,还适合那些在设计领域有一定基础的程序员,如UI/UX设计师。以下是对模板中各部分知识点的详细说明: 1. **联系方式**: - 在简历中清晰地列出姓名、地址、手机号码和电子邮件地址是至...
【知识点18】在软件的编码阶段,主要工作是程序员编写代码,通常不需要用户直接参与。 【知识点19】风险控制涉及风险避免、风险监控和风险管理及意外事件计划,这些活动是应对已识别和预测风险的策略。 【知识点20...
5. **工作经历**:详细阐述你在宸兮创意服务有限公司或其他相关公司的职责,例如作为平面设计师,你参与了企业画册、标志、包装和广告设计等。务必确保内容真实且具体,可以量化成果,如完成项目的时间、节省的成本...