您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 咨询培训 > 《程序员岗前培训手册》
程序员岗前培训手册北京应用技术大学目录(CONTENTS)前言面试是双向选择软件公司研发技术岗位扫描与岗位职责如何快速融入技术团队(程序员入岗的注意事项)优秀程序员应具有的品质与习惯谈谈学习方法外包软件、商品软件、项目软件简介前言同学们经过在北京应用技术大学两年的学习,都满怀憧憬地向往程序人生的开始,也对即将走上的工作岗位和环境充满了期待,期待通过程序来证明自我的价值。程序员,相信在很多同学眼中是一个有趣、特别、高薪、充满艰辛而又非常神秘的职业,因为手下那一行行跳动的代码不仅实现了生动的功能,同时也表达着程序员对人生的理解和追求。当程序员实现了一个独到的创意之后准备熄灯休息时,天已蒙蒙亮…..当程序员看着用户熟练地操作自己的软件解决一个个复杂事件时,脸上那写满成就的微笑…..的确在这个行业里出现了太多的英雄人物和企业,而每一个英雄的事迹和成就都足以让我们热血沸腾、摩拳擦掌……在同学们即将步入程序员岗位之前,需要对软件研发相关职位的职责范围与工作特点有所了解,掌握一些入职的基本技巧和注意事项,检查自己的技能与行为习惯,有的放矢,提高面试和就业的成功率。入职后能尽快地融入到技术团队,近而快速成长,成为团队技术骨干和最优秀的职员。在工作中养成积极而良好的行为习惯和职业素养,为自己的职业发展创造一个良好的开端。本手册从面试、技术岗位职责、如何快速融入技术团队、优秀程序员的品质与习惯、学习方法、外包软件/商业软件/项目软件简介等几个方面阐述了同学们在踏入工作岗位之前应该了解的知识和注意事项。面试是双向选择一般同学都会误认为面试时应聘者处于弱势,要接受招聘者的挑选,从而从心理上承受很大的压力,而影响自己正常的发挥和才能展示。其实大可不必,因为面试是双向的,选人和择业是平等的。况且现在市面上的用人单位或招聘岗位也是良莠不齐,甚至还有一些骗子公司,这就要求同学们在应聘时擦亮眼睛,注意分辨。当然大多数公司都是良性的,他们要么是已具规模,各部门及岗位功能分工很明确,他们会根据业务的发展或作为人才储备而有针对性的招聘相关技术人员,而有的公司可能是刚刚成立,业务与核心技术还未形成,他们需要招聘到能为他们提供解决方案或创意的技术人员,所以对于这些类型的公司,他们对人才的渴求也都不亚于同学们对工作岗位的渴求,若是聘到一个优秀的技术人员对业务或项目的推进将会使公司获得更大的利益,或者使公司的发展少走弯路甚至能改变一个公司的命运。相反,如果招不到合适的人才或者使用一个较差的技术人才,不但不能推进项目的进展,还要花费几个月的培养时间和费用,甚至阻碍业务开拓甚至项目搁浅。所以当同学们想得到一个工作岗位的同时,也要看到企业更需要一个优秀的员工,二者是平等的。在面试时,同学们在一种非常平和的心态下,充分发挥,尽可能地展示自己已经掌握的技能,展示学习能力和发展潜能;另一方面也要尽可能地提前了解公司的背景和业务以及应聘岗位的职能,从而加以辨别和选择。一旦本次面试不能成功,表明要么岗位不适合你,要么你不适合岗位,或者因为你本次的表现不佳,这都是很正常的,一定不要有挫败感,要及时总结面试时的表现方式以及沟通技巧,若感觉自己的确能够胜任该岗位,只是因为自己的临场发挥不佳而没有展示出自己的实际水平,也可及时和招聘公司联系,经询问确认对方没有找到合适人选的情况下,表明诚意,请求复试机会。总之,若本次失败,一定不要影响下一次的面试,要积极总结,为一下次面试作准备。正常运营的公司因业务的不断发展,人才需要不断的更新、补充和储备,所以他们一直都需要人才,况且公司每次组织招聘都会花费一大笔费用,也希望能够找到合适的人才,所以公司面试时一般不会出太吊钻的问题来为难你,同学们也不要过分担心。另一方面,同学们在坚信“天生我才必有用”的同时,也要正确看待现在的就业形势,对第一份工作也不要过于理想化,要摆正心态,坚持从基层做起,先就业再择业,职场上“骑驴找马”也未必不是一种现实的理性选择。总之,面试是双向性的,是招聘单位与同学们相互展示、相互认识、互相挑选的一次沟通过程。同学们在求职的过程中,要正确看待面试,放下思想包袱,充分重视,充分准备,从容应对。软件公司研发技术岗位扫描与岗位职责一般中小型软件公司设置的技术岗位有:研发总监、项目经理、需求分析人员、系统架构与分析人员、数据库设计人员、程序员、项目助理与文档专员、测试人员、技术支持(售前/售后)、美工或网站前台人员等,这些职位的工作联系非常密切,根据公司规模的大小,以上职位可由一人或多人兼任,比如一个小型的软件公司可能只有一个人完成软件的总体设计、架构、编码、测试、文档等工作。这些岗位的职责范围大致是:研发总监:全面负责研发及技术部门的整体工作。项目经理:在整个项目开发过程中组织项目所需的各项资源,对项目的范围、项目的质量、项目时间以及项目成本进行管理与控制。根据项目范围、质量、时间与成本的综合因素的考虑,进行项目的总体规划与阶段计划,保证项目组目标明确且理解一致;在项目生命周期的各个阶段,跟踪、检查项目组成员的工作质量;保证项目在预算成本范围内按规定的质量和进度达到项目目标。需求分析人员:项目前期与客户方打交道最多的人,对于客户来说,他可以代表整个项目组,对于项目组成员来说他的意见可以代表客户方的意见,项目组内所有与客户需求相关的事情必需得到他的认可。他的工作主要是:1、在项目前期根据《需求调研计划》对客户进行需求调研。2、收集整理客户需求,负责编写《用户需求说明书》。3、代表项目组与用户沟通与项目需求有关的所有事项。4、代表客户与项目组成员沟通项目需求有关的所有事项。5、负责《用户需求说明书》得到用户的认可与签字。6、负责将完成的项目模块给客户做演示,并收集对完成模块的意见。7、完成《需求变更说明书》,并得到用户的认可与签字。8、协助项目组有关人员对需求进行理解。系统架构与分析人员:是项目的总体设计师,组织构建新产品的开发与集成、新技术体系等,也可以理解为技术总监。是在技术上对所有重要事情做出决定的人。系统架构在整个软件开发过程中都起着非常重要的作用,并随着开发进程的推进而其职责或关注点不断地变化。1、在需求阶段,负责理解和管理非功能性系统需求,比如软件的可维护性、性能、复用性、可靠性、有效性和可测试性等。审查客户和市场人员所提出的需求,确认开发团队所提出的设计;组织开发团队成员和开发过程的定义;协助需求分析师完成《用户需求说明书》、《需求变更说明书》等。2、在设计阶段,负责对整个软件架构、关键模块、接口的设计。对系统进行分析与建模,完成《系统架构说明书》、《系统概要设计说明书》、《系统详细设计说明书》。3、编码阶段,成为程序员的顾问,负责重点代码检查,并且经常性地要举行一些技术研讨会、技术培训班等;4、测试及实施阶段,随着软件开始测试、集成和交付,集成和测试支持将成为工作重点;数据库设计人员:根据《系统架构说明书》负责进行数据库选型与建模。由于数据库是整个系统运行的核心,数据库设计的好差直接影响着整个系统的开发效率和系统运行的优劣。他是项目组中唯一能对数据库进行直接操作的人,对数据库结构的每一次改动都要得到他的认可。主要职责:1、根据数据库建模结果,绘制数据库关系图。进行数据库建库以及数据库进行初始化操作。2、对数据库进行维护、备份、恢复、同步。3、负责客户数据的导入导出。4、根据《系统详细设计说明书》编写对应的视图、存储过程、函数、触发器等。5、对项目组其它成员进行SQL方面的指导。6、为测试建立相关测试数据。程序员:负责系统的最终代码实现。主要职责:1、参与需求调研、项目可行性分析、技术可行性分析和需求分析。2、协助完成《系统详细设计说明书》,并根据《系统详细设计说明书》进行编码实现;3、对自己代码进行复查,并进行简单的测试。4、撰写相关技术实现或功能描述文档。5、负责向项目经理及时反馈软件开发中的情况,并根据实际情况提出改进建议。6、参与软件开发和维护过程中重大技术问题的解决。项目助理或文档专员:协助项目经理在项目日常管理和数据分析方面的工作,进行与项目有关的协调工作,编写项目进度报表,参与组织项目协调会,组织项目非技术文档的编写、传递与归档,以及与市场人员或其他部门的日常沟通,协助项目资源协调工作。跟踪项目进展。项目或软件包的打包、发布以及授权锁的制作等工作。测试员:负责实施软件测试。测试是整个项目系统中非常重要的一个环节,项目质量的保证,他的主要工作就是找到项目中存在的不合理、不合格的部份,并要求项目其它成员按其给定的项目质量完成项目。保证了系统功能实现是否与功能设计和需求定义一致。主要职责:1、根据软件项目规范编写测试计划,设计测试数据和测试用例。2、采用合适的测试方法实施软件测试,形成各阶段的测试报告,并对软件问题进行跟踪分析和反馈,推动测试中发现问题及时合理地解决。3、完成对产品的集成测试与系统测试,对产品的功能、性能及其他方面的测试负责。4、协助程序员进行软件代码检查,提出对软件的进一步改进的要求。技术支持人员:主要负责软件产品或项目在技术层面上与客户的交流,根据工作重点分为售前支持和售后支持。售前支持:是销售人员和开发人员的桥梁,协调销售人员、用户、开发人员的关系,制作产品功能演示PPT文档或多媒体资料,将公司的技术实力向用户展示,技术标书的撰写,定期采集、分析和整理用户的需求,配合销售制订产品销售策略,从技术上支持市场销售业务等。售后支持:负责编写《用户手册》、《操作手册》,制作系统操作视频教程等多媒体培训教材;负责系统实施(包括系统安装、用户培训、系统试运行等),协助用户进行“用户确认测试”和编写《确认测试报告》;通过电话、网络、及时通讯等多种渠道解答用户在使用中的问题,提供售后服务。收集、整理用户的建议等。美工或网站前台人员:负责完成软件设计师安排的功能界面设计和简单网站的设计。1、负责对项目整体色彩的调配。2、向系统分析师提出项目美化的建议。3、为BS项目提供一套或几套CSS样式表及HTML结构表4、为CS项目提供符合项目内容的静态、动态图片。5、并为程序员提供界面指导。如何快速融入技术团队——程序员入岗的注意事项同学们刚刚结束学校的集体生活,面对新的工作环境、新领导、新同事、新任务、新的制度、新的生活节奏,很多的变化需要你尽快适应,很多的事情需要你独挡一面,而又有许多事情需要你与同事通力协作来完成……以下是新程序员入职后尽快融入技术团队应注意的事项:1、认真学习公司的发展背景与历程、主营业务以及规章制度。进入公司前可能对公司已经有了一些了解,入职后,相关人力资源管理部门会组织培训,解读公司文化,介绍公司发展背景、主要职能部门以及主要业务特点,学习公司考勤、人事、办公等管理规定和规章制度。有些新入职的程序员或技术人员,认为这些不含技术成分没有必要花精力去学习,其实这种认识是错误的,公司文化及各种制度是整个公司的灵魂,是公司正常经营活动保障和员工行为的一种约定,新职员只有对公司的发展背景和经营状态有充分的了解,接受公司文化,高度认同公司的核心价值观,严格遵守各种规章制度,才能自觉地规范自己的行为习惯,在工作学习中才有主动性,遇到工作压力时也能坦然地接受,不会有抵触心理,从而能更快地推动自己的工作。2、积极学习业务知识、类库及现有程序资源,把握学习的技术方向。程序员入职后,若有一个成熟的开发团队,一般都会有一个老职员来带领学习,这一阶段主要有三个方面的学习任务,第一是公司业务知识,因为程序员只有对业务知识熟悉了,才能更好的理解和把握功能需求,比如做通信方面的软件,你要学习一些通信行业知识;若做财务软件,你要了解一些财务知识。第二,现有的类库是公司开发部门积累的程序资源,学习和使用它可以规范统一程序的风格,提高开发的速度,掌握并能使用这些资源,可使你尽快与老职员有程序上的共同语言。第三,学习并加强在此领域的编程技能,因为在学校学习的是通用的知识,掌握的是一种知识导入与学习的方法,那么在公司应用方面也许要求你某一个方面很精通,比如网站的前台、数据库、图形处理、多媒体、网络编程等某些方面的技能需要强
本文标题:《程序员岗前培训手册》
链接地址:https://www.777doc.com/doc-962609 .html