java软件工程师
2021-07-05 · 电脑培训、IT教育、职业技能培训。
1、负责项目相关开发工作,包括参与系统需求分析、研发设计;
2、参与制定开发方案,负责功能模块划分、模块开发及后续的维护工作;
3、负责技术研究,结合业务需求,保障研发及迭代效率。
4、独立或主持完成多个模块/组件(含核心部件)的软件需求分析、软件设计(含增量方式)、代码编写、单元测试、集成测试、静态检查、本地构成等工作;
5、负责交付特性/子系统设计文档和接口,负责相关头文件、参与核心代码开发,并通过设计有效的提升开发、测试、维护等全流程及产品全生命周期效率;
6、主导补丁包的端到端交付或负责R版本或某子系统的优化,有效提升代码执行效率(或性能)或明显缩减代码规模;分析产品可维护需求及其价值,参与产品或平台新版本可维护设计改进,提升产品诊断能力;
7、分析及参与业务需求的迭代开发,提供系统架构设计方案并进行落地。
8、负责对业务增长中遇到的技术瓶颈进行攻关,确保系统稳定性及业务高速增长。
9、负责对现存及未来系统进行宏观的思考,规划完善形成统一的框架、平台、体系或组件。
10、负责推荐系统及大数据分析系统的规划与演进。
任职要求:
1、真实2年以上Java开发经验,Java基础功底扎实。熟悉Java基础知识和核心类库。
2、具备良好的面向对象编程经验,熟悉常用设计模式。
3、熟悉使用Spring Boot、Spring Cloud等开发框架,并有相关的开发经验。
4、熟悉Linux操作系统以及JAVA应用服务器维护。
5、熟悉Oracle、Mysql等常见数据库的基本原理以及适用场景,熟悉不同种类的数据库编程,了解常见SQL调优。
6、至少掌握一种(Mybatis、Hibernate、Spring JPA)数据持久化框架。
7、熟悉分布式中间件技术(nginx、zuul、zookeeper等)者优先。
8、熟悉常见缓存技术,使用过Redis、Memcache等缓存框架者优先。
9、熟悉分布式常用技术者优先,如部署单元化,分库分表,分布式数据库,读写分离等。
10、对多线程,并发编程,异步IO等高可用设计有熟悉者优先。
11、责任心强,具有较强的学习能力和团队合作意识,良好的沟通能力、方案设计和撰写能力。
12、对新技术敏感,求知欲强,能快速学习并具备较强的技术领悟能力。
Java软件工程师运用Java开发工具去完成软件产品的软件程序设计、开发、测试、维护升级等工作。具体职责是:
1、按产品或项目要求进行技术开发,能独立完成模块分析设计。
2、根据开发规范与流程独立完成详细设计,编码,测试及相关文档。
3、负责信息系统(如OA、CRM等)持续优化,以及微信企业平台端的开发。
4、负责信息系统的推广应用,数据管理及日常维护管理。
5、配合信息安全主任做好信息安全保密工作。
任职要求
1、计算机专业本科以上学历,从事后台系统开发1年以上工作经验;
2、熟练使用Java/.NET语言开发Web应用,熟悉主流技术框架;
3、熟悉数据库理论,熟练掌握主流数据库MySQL、SQL Server等的应用;
4、熟悉HTML、XML、JavaScprit、ajax、Web Servrice等WEB技术;
一、KPCP6.0是什么样的课程?
以就业为导向是KPCP6.0课程最根本、最核心的特征。KPCP6.0是职业教育,不是学历教育,而职业教育的本质就是就业教育,学习的目标就是为了就业,有助于就业的我们就学,无助于就业的我们就不学。
时至今日,软件开发企业用人主要有以下几个特征:
1、外包开发行业快速发展,对“人才”在代码和文档方面的规范性、技能和工具的熟练程度要求越来越高;
2、Java和.NET技术在市场上平分秋色,都有大量的岗位需求,同时值得庆幸的是二者在应用层面上的技术差异越来越少;
3、软件开发企业对开发人员的基本技术素养强调得越来越多,例如:面向对象的程序设计思想和代码组织方法、HTML/CSS/JavaScript客户端技术;
4、为了保证质量和工期,企业中大量使用各种框架技术,要求开发人员至少熟悉一种框架技术;
5、MIS、OA、ERP、CRM、系统集成、物流、进销存、电子政务、网站建设这一类B/S系统,成为软件工程师需求最大的业务领域。
但是企业强调得最多的,是关于软件开发人员的职业素养要求:作为一名职业人,守时、踏实、耐心的习惯,以及适应能力、学习能力、抗压能力、规范意识、合作意识、沟通意识,都是是不可或缺的要素。多年的跟踪数据显示,具备这“三个习惯、三个能力、三个意识”的软件工程师,在职业上获得了良好的发展,否则技术再强也难有好的发展机会。
为此,KPCP6.0把职业素养训练课程(COT)作为课程的重点来实施,整个学习过程中,监督并要求学员能够不断反省自己、养成良好的生活工作习惯,顺利完成从“学校人”到“准职业人”和“企业人”的飞跃。
二、以实用技能为核心 —— KPCP6.0如何选择课程内容?
软件开发领域内所涉及到的技术内容是非常多的,不同的行业会使用不同的技术,不同的项目也会使用不同的技术,在技术选择上我们遵循了实用原则和80/20原则:
1、实用原则:所选择的技术一定是能够解决实际工作中的实际问题的技术。打个比方,假设我们是在学习修车,关于汽车原理、发动机原理、轮胎橡胶特征我们就不会花费精力去学习,因为这些内容在修车过程中很少会使用到,而如何使用各种检测设备和螺丝刀等工具、以及不同品牌汽车修理和保养的经验,则是汽车修理人员最迫切需要掌握的技术。因此KPCP6.0课程主要内容也集中在如何解决软件开发项目中所涉及到的技术工具、技术框架、开发流程和编码调试经验等方面。“不要去背诵对象有哪些方法、属性,而是要去使用这个对象去解决实际问题”。
2、80/20原则:80/20原则包含两层意思,第一是企业80%的时间在使用的那20%的核心技术我们重点讲解,而那些80%不常用的非核心技术我们弱化讲解,或者只作为介绍或者拓展内容(例如Oracle和Linux课程);第二是花费80%精力才能够能学会的20%内容我们不讲解(例如C/C++技术)。
总之,以用为本、学以致用、不用不学、用时才学、学了就用、综合运用是KPCP6.0选择课程内容的最终标准。
三、以案例为主线 —— KPCP6.0如何组织课程内容?
与传统的教材编排方式不同,KPCP6.0内容的安排是以案例为中心来开展的,并适当地把多个案例联结成一个工程项目。在每一门课程中,都采用了一个实际的开发案例来组织技术内容,理论课上老师会通过一个案例、小项目的讲解来引出技术内容,而上机课要求学员自己逐步完成一个类似的项目。
在案例的选择上,我们在考虑到案例的实用性的同时,也尽可能地提高案例的趣味性、并加强与日常生活中遇到的问题和现象的联系,从而帮助你理解案例内容。
通过这种案例教学的方式,学员不会迷失在浩如烟海的知识中,同时会具备更多的行业知识和项目经验。
四、以动手能力为突破点,以项目经验为学习目标—— 怎么样才能学好KPCP6.0课程?
KPCP6.0课程最终的学习目标是:“能够运用Java或者.NET技术,在团队合作的基础上,参与到整个软件项目开发过程,熟练、规范地完成企业级B/S系统模块的编码、调试和文档编写,成为企业紧缺的技能型应用人才”。这长长的一句话再浓缩成四个字,就是“项目经验”,学习完KPCP6.0,相当于具备一年的实际软件项目开发经验,这也是目前绝大多数软件企业招聘时的最低要求。
学习的目标改变了、学习的内容也改变了,必然要求学习方法也去做调整和改变。以往的死记硬背不再适合于KPCP6.0的学习,KPCP6.0需要的是通过“动手”,来训练技能,不但要快、还要规范。把发动机的各项参数背得再熟练也是不会修车的,而快速判断问题发生的原因,使用扳手、螺丝刀快速搞定问题才是正道。修车高手只能通过大量的实践、总结、再实践才能够达到快刀斩乱麻解决问题的境界。同样,KPCP6.0的学习也要求学员“动手、动手、再动手”,要敢于编码、乐于编码、大量编码才能够达到熟练的程度。
现代企业要求合作,代码规范是团队开发的基础,没有人能看得懂的代码,不管自己觉得写得如何漂亮,终将被称之为“垃圾代码”,在全部学习过程中,我们要求学员:“代码运行通过了不算代码写完了,代码规范了才算”。
我们认为,只有通过大量的、反复的动手实践,才能具备熟练、规范的编码和调试能力,具备真正实用的技能,才有可能被称之为应聘者中“有项目开发经验的人”,成为一名企业真正需要的“人才”,在日益激烈的职业竞争中拔得头筹,
KPCP6.0向这个目标迈进了一大步。
1、以“技能”为核心的职业教育产品设计,凸显“实用”导向 KPCP6.0课程注重训练学员能解决什么实际问题、完成什么实际任务,而不是传统教学的懂什么概念、了解什么知识;因此,从一开始,课程内容的设计和安排依据就是用人单位所需要掌握的技能,然后我们的培训目标中确定了286个“实用技能点”。最后,通过这些技能目标我们找项目、设计项目来编排课程,确保所学有用、能用、够用。
2、全面强化职业素养培养课时大大增加:S1:S2:Y2 = 30:28:30 在沟通、表达的基础上,增加以下的内容:
——固化学术活动,促进学习方法和学习习惯养成
——针对不同阶段学习特点,解决不同学习上的问题
——增加时间管理、压力管理、团队合作、人际交往等训练内容
——入职训练系列和求职面试系列,完成从院校人到企业人的转变
——增加视频教学
提供职业素养过程实施和监控、考核
3、突出项目经验和IT行业背景,重现企业工程项目场景提供26个企业真实项目案例,上机比例增加到65%,保证代码熟练度整个学习过程将完成52000行代码的编写,其中项目代码20000行 S1S2Y2阶段项目时间分别为24、24和76学时,项目开发周期在30-45天提供行业手册,介绍行业术语、项目架构和开发流程。
4、提升学员动手能力训练的力度和强度,提升了课程性价比增加上机时间,理论和上机课时比例高达2:3,上机操作高达总课时的65% 通过标准化方法,加强了上机课和项目实践课的过程控制,达到更好的训练效果。
5、案例贯穿、项目驱动的课程组织方式,让学员轻松学习,学员边学习边在课程中完成贯穿项目26个,大大增加了学员实战的机会和学习的成就感,增强了学员综合运用所学技能解决具体问题的能力。