作为JAVA后端工程师,我将从我常用的技术栈进行列举:
1.Java:这是基础语言,日常开发常用JDK1.8及以上版本,熟练使用Spring Boot框架,开发过程中,熟练使用stream等方式编程,合理使用注释,不敢保证代码靓丽,但一定能保证工整。
2.MySQL:作为最常用的开源数据库,能做到合理使用数据库第三范式设计表结构,能对每个字段做好注释,能合理使用索引保证SQL查询效率;SQL语法扎实,常用如left join,right join,case 等语法进行查询
3.中间件:
(1) mybatis plus: 持久层框架,合理使用QueryWrapper和xml脚本完成查询;
(2) redis: 常用的缓存中间件,因为效率高,常用于缓存不常更改的数据以及并发量大的数据;因为其单线程的特性,常被用于实现分布式锁
(3) MQ: kafaka, rocketMQ, rabbitMQ作为解耦常用中间件而被使用,本人可以正常使用,暂无调优经历
目前所有项目均为工作单位所拥有,具体细节不方便透露,这里简单描述一下
1.金融行业从事风控模型开发研究,主要特点是涉及到金钱,必须要求代码健壮性;其次,大数据量,金融行业客户消费数据,贷款还款数据量日积月累,必须保证程序大数据量下不宕机,不能在执行过程中因为异常而终止执行
2.后跳槽到互联网公司,程序的显著特点就是强调执行效率,常将redis以及cache合并使用,其次,代码逻辑复杂,要求我们实现方法的高效重复利用,不能重复利用的代码以重载的方式编写,用于后期维护