Java软件工程师的具体职责是什么?

Java软件工程师的具体职责是什么?,第1张

Java软件工程师的具体职责是什么?每家公司都不一样的,悟空笔记整理了5家公司对Java软件工程师的要求,希望能够对大家有所帮助!

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软件工程师的具体职责以及任职要求,希望对大家有所帮助!

1、Web开发

目前豆瓣、知乎、拉勾网等都是用的Python做开发,由此可见Web开发在国内的发展还是很不错的。

因为Python的web开发框架是最大的一个优势,如果你用Python搭建一个网站,只需要几行的代码,可谓是十分简洁。

2、网络爬虫

现在学习Python的人员中,大部分都是在学习爬虫,这也是Python的一大优势之一,最早用Python做网络爬虫的就是谷歌。

3、人工智能

发展潜力和Money不用多说,这都是大家所知道的,但目前的话,人工智能方面的工作还是比较少的,而且都是高学历人士,以后的话肯定是最具有发展潜力的方向了。

4、服务器运维

运维也不陌生,最开始一批学习Python的人,就是运维和测试的在职人员,因为Python对于他们的工作起到很大的作用,因为使用Python脚本进行批量化的文件部署和运行调整都成了Linux服务器上很不错的选择。

5、数据分析

Python所拥有的完整的生态环境十分有利于进行数据分析处理,比如,"大数据"分析所需要的分布式计算、数据可视化、数据库 *** 作等,都可以通过Python中的十分成熟的模块完成。

想了解更多Python相关,可转:

很多对Python不熟悉的人,认为Python在最近这些年的兴起是运气而已。本文帮助大家回顾一下过去十几年Python的3次增长和对应的历史背景。

Python设计之处的特点,包括易学易用,以及作为胶水语言。易学易用是个难以量化的东西,但至少我接触的绝大多数朋友都认同Python在学习和使用上是比大部分语言简单的。有些人不认同Python通常也不是认为Python相对其他语言难学,而是认为Python的运行速度慢,或者动态类型语言的通病。至于胶水语言就比较窄了,面向作为胶水而设计的语言是很少的,印象里只有Lua算得上一个。另一个Python相较其他语言的优势是字符串处理。

以下介绍Python获得发展的3次机遇期。

2006年的搜索/NLP:2006年前后正好是搜索引擎公司发展的爆发期。那一年Google中国李开复搞了关门弟子计划,百度也做了诸多广告,比如百度更懂中文系列。在那个时代搜索引擎就是IT行业的高科技。之后不久,阿里巴巴也搞了个ASC(阿里巴巴搜索技术研究中心),后来多次追潮流更名,一直作为阿里巴巴内部的前沿研发部门。

而Python用作搜索引擎和NLP是很有历史的。早期Google在90年代开发搜索引擎爬虫就是使用Python实现的。而即便是现在,开发爬虫,Python也基本上就是第一选择。很多人学习Python的入门程序也是爬虫。而Python适合开发爬虫的关键在于Python的字符串处理是很方便的。

也就是从2006年末开始,国内的python-cn邮件列表涌入了大量的新人,并以爬虫为例开始深入学习Python。

2010年的WEB创业潮:2010年开始,国内外出现了新一轮的创业潮,大家开发的是各种各样的网站。此时的WEB开发上,Python已经逐步成为主流WEB服务器开发选项中的一种。相对于同时代的Java和PHP等,有着开发效率上的优势。

正因为早期创业公司需要迅速的迭代和试错,使得这个时代的Python成为了一个不错的选项。进而让更多工程师开始学习起来Python。

也就是从这个时期开始,才逐渐有较多的公司会公开招聘Python工程师。在此前招聘Python工程师的广告是非常非常少见的。

2014年的Deep Learning:从2014年开始火起来的深度学习上,Python的优势是近乎绝对的。深度学习的主流开发语言只有C++和Python两种了,其他语言可以认为根本就没能在这里分到什么像样的空间。所有主流的Deep Learning框架,也是官方直接提供了C++和Python两种接口。而由于C++开发的难度,当前确实有不少从业工程师是直接用Python搞定深度学习的相关步骤。

这次Python的增长期被更多不了解Python的人认为是Python的狗屎运。但其背后的逻辑反倒是非常坚固的。原因就是Python是个很好的胶水。最初的起点是numpy库。

numpy是封装了BLAS的科学计算库。BLAS是对CPU向量指令集高度优化的数学运算库。通过BLAS进行科学计算可以得到顶级的计算性能,这个计算性能比未经向量指令集优化的C程序还能快上数倍。而numpy的另一个重要特点就是,把buffer做了封装,使得buffer的内容是无需Python处理的,而是实际交给特定的软件库来处理,numpy只是负责维护该buffer的生命周期,形状等元数据。这就使得numpy的计算性能不会受到Python的影响,但同时却可以利用Python的易学易用来管理buffer的生命周期。

numpy对buffer的管理带来的易用性优势在后来得到了很大的发展。如以下几点:

OpenCV:在opencv-python中就是使用了numpyarray来管理图像数据,却没有像C++接口一样使用Mat。同样的顶级性能。

PyCuda/PyOpenCL:也是利用了numpyarray来透明传递数据给GPU做高性能计算。尤其是集成了JIT,使得可以用字符串的方式传递kernel function,不再像C++一样要独立编译一遍。

Caffe/TensorFlow:同样利用了numpyarray,并利用了PyCuda/PyOpenCL的集成。

所以这样一路发现下来,由Python是个好胶水,就真的把若干很好用的库全流程的粘在了一起。在流程集成上都是顶级的性能,而没有Python的性能损耗,同时带来了非常好的易用性。

相比其他语言,对这些C/C++库的玩法都是先封装一层对象,包准封装的前后对不上。而且因为大部分语言并不是面向胶水设计,开发C接口都很困难。自然与这些高性能计算库的结合困难重重。累计起来就与Python产生了差距。

题主所提到的R语言,是一种领域相关的语言,是做统计领域的,类似的还有做科学计算的Matlab。如果程序的输出只是一份报告,甚至一份统计图,问题是不大的。但想要成为产品,与其他系统集成则成了难题。一般的服务器部署产品,是不会选择在工程上这么不专业的语言。所以,实际应用时,还是要有工程师负责将算法提取出来,移植到产品级的语言和平台上。举个例子,R虽然可以正常的访问MySQL数据库之类的。但产品级系统中,涉及到memcache、kafka、etcd等,可就没有R语言的接口了。所以这些领域相关语言,写一些自己电脑上跑的小程序还可以,进入产品是没什么希望了。

再者就是因为通用性一直难以跨越出自己的领域,所以这类语言的生命周期一般都不太长,失去自己领域的强支撑后会很快消亡。所以建议题主还是花一些精力去看看业界通用的一些语言。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zz/13175861.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-06-16
下一篇 2023-06-16

发表评论

登录后才能评论

评论列表(0条)

保存