8月底在boss上投递的,9.7直接技术一面。是电话面试的,问的问题不是很难。两天后hr面,等了三天就出结果了 流程很快
面试官问的面试题: ? Java基础知识,如==和equals的区别、final关键字的作用、String类的相关方法等。
? 多线程和并发,如线程的生命周期、synchronized和ReentrantLock的区别、线程池的工作原理等。
? JVM知识,如垃圾收集器的类型、类加载机制、内存模型等。
? 框架使用经验,如Spring、Spring MVC、MyBatis、Hibernate等。
? 数据库知识,如MySQL的事务隔离级别、索引的底层实现等。
? 网络知识,如TCP/IP协议、HTTP请求方法等。
首先是自我介绍,然后一轮技术面,一轮主管面。技术面主要是前端的基础知识,主管面主要考察综合素质。基础知识会考察布局、作用域、渲染过程、考察js多。主管面就是下面的一些问题。
面试官问的面试题: 1.为什么选择做前端
要说的话我首先是一个程序员,然后我喜欢并且擅长写javascript,再然后才是一个所谓的“前端工程师”。javascript是一个真正意义上的跨平台语言,浏览器是少有的横跨PC/移动设备的GUI平台,nodejs也是一个高性能且开发效率高的平台,我相信未来随着计算能力的不断提高,这些技术必然会生出更多炫酷的东西。
因为前端做出来的东西可以马上展现出来,可以给我带来最直接的成就感,做的时间越久,越感觉可挖掘的点很多,很有意思。
2.前端工程师的主要工作
a.前端开发。具体来说就是负责如网站、系统等前端开发,并能按照预期完成产品的交互功能;
b.要配合UI设计师实现预期的视觉交互效果;
c.配合后端工程师完成相关应用的开发工作;
d.定期的更新和优化产品,保持产品的生命力和可用性;
e.解决项目在开发过程中遇到的相关问题,比如技术问题,比如业务问题等。
3. 前端怎么学习的
精读js、css、html、vue、vuerouter文档
掘金社区,可以学习大佬的经验
边做项目边学习
4.前端需要掌握哪些技能
1.首先是前端的核心技能html、js、css。掌握基础知识,不管前端框架、工具怎么变迁都会较快的上手。
2.掌握前端主流框架vue、react、angular可以大幅提升开发效率。
3.了解浏览器的工作原理,能够帮助更准确评估web项目的可行性,快速抓住迭代问题的本质。dns解析、http响应、dom解析、js阻塞等都会导致页面首屏渲染延迟。tcp连接、接受响应、渲染页面、断开连接
4.学习node.js,前后台统一语言,可以实现程序员全栈开发,代码标准化,可以用它做前端渲染和框架优化,开发低延迟的网络应用。Node.js 编写的包管理器npm已成为开源包管理了领域最好的生态
5.代理服务器nginx。部署前端项目、负载均衡、反向代理分发后端服务和解决跨域分配用户大容量的请求。反向代理隐藏真实客户端,
5.产品、架构,
6.沟通能力、需要平衡项目负责人、ui、用户、后端工程师等人的需求,拿出比较合适的方案。
5.你近期遇到的最大的困难
情景:我们实验室需要搭一个大的文本AI平台。
任务:我被分到的任务是语义理解,学习的模型是ernie-gram
行动:那个时候在找工作,写小论文时间比较紧。几乎对于这个模型一无所知,而老师每周需要提交研究进展,有压力。在开始之前我会先向师姐请教,学习模型大概是什么流程。
1.我先简单列了一个时间表,包括测评、笔试、面试时间段,小论文的阶段完成时间,大概给模型研究留了每天一个小时的时间。
2.我先在百度、谷歌上搜索看它是干嘛的,是针对句子还是篇章的理解,语义理解以前有哪些模型 有啥改进。有没有基于它已有的研究成果。然后在github上看一下有没有实例代码。
3.把相关代码、预训练模型、数据集拉下来。根据readme,尝试配环境,从train作为入口找到搭建的模型,去搜每一句代码代表什么意思,或者有什么作用。对模型整体有大概的了解后,尝试跑模型,断点调试看模型中的数据处理的效果。再看最终结果。将对比模型像前面的操作一样,也拉下来跑结果,对比它们模型的架构。
在整个操作过程中会遇到各种问题,像数据集可能需要预处理(需要读他的代码反推数据集可能的结构,这个过程就比较麻烦,要细读他的dataset代码),环境中包的版本不匹配(先看需要的包,再去搜索它们对应的版本以及支持的python版本)
结果:代码跑成功了,有了如何学习模型的大致思路,
6.你觉得这个项目有什么值得改进的地方?
1.项目的模块划分有点冗余,物理视图、列表视图、拓扑图有冗余,虽然展示形式不一样,但功能都是设备的状态及层级关系。
2.地图态势页面、态势回放页面
2.在写html没有多的使用语义化标签,不太适合后期队友修改代码。
7.你的优点是什么?
做事情专注:
抗压能力较强
能够快速融入工作环境,开始工作
细心、重视细节:
容易静下心来写代码:
8.你的缺点是什么?
1.有时候太着急,太过赶进度,和后端的进度不一致,我会郁闷,但是随着时间的磨合我会调整自己适应队友的节奏。我会先把能做的其他先做了。
2.做项目的时候太关注项目本身,对浏览器的工作原理花的时间不够,
3.
9.你在项目中学到了什么?
1.了解了项目运作的整体流程。从指标开始,项目组开会讨论确认需求、分模块及页面、前后端规范,时间结点与分工,,写文档做demo。UI绘图与客户沟通效果,确认之后。绘制前端的整体框架,加入demo。用户手册、系统测试文档等等
2.培养了解决问题的思维,意识到团队合作的重要性,沟通交流的重要性。比如与后端协调接口参数的数据结构、变量名,如果不提前沟通好,前端就会做二次工作。团队分工做相对独立的demo可以极大提高后期开发效率,减少团队的重复工作量。
3.知道与用户沟通具体需求的重要性,在甲方更改需求时,知道用资料、数据证明可行或不可行的重要性。
4.认识了很多大佬,学习到了很多经验
10.职业规划
1.近期先把公司的项目做好,提升前端技术,夯实我的技术,多学一些组件、插件、框架
2.中长期,再研究一门后台语言java、php,争取为公司更好的服务
3.公司有良好的竞争制度、考核制度、如果有机会摆在眼前,我一定会抓住的。
全程电话面试,先做自我介绍,之后是问项目,之后根据项目延申出来一到两个问题,最后问基础知识,问的面特别广,涉及到线程、IO、锁、集合、JVM、索引、隔离级别、事务底层等
面试官问的面试题: 1.Jvm 内存JMM 由哪几部分
2.如何断定对象是否被回收?
3.可达性分析中根节点是由哪些对象构成
4.对一个512M 10G的文件,如何获取到前10的数据
5.Outofmemory会发生在哪些区?什么情况下会出现?方法区是什么情况下会出现这个问题
6.索引
7.什么情况下不走索引
8.INNODB的数据结构
9.多线程
多线程的构造方法
10.线程
Sychronized是如何实现的
11.Mybatis缓存 一级缓存和二级缓存
12.IO 有哪几种方式
13.什么是同步 什么是阻塞 同步和阻塞一样吗 有什么关系, 分别在什么情况下发生
14.数据库隔离级别,他们有什么关系
15.幻读是什么
16.Spring如何加事务,
17.事务注解的底层原理
一面是技术面试,面试官是将来工作部门的人。用的是赛码,视频面试,进去之后对方一直没有声音,弄了蛮久,对方换了手机才好(不是我的问题)。一开始先自我介绍,然后问了实习经历相关,然后问了对于ERP软件的了解和认识,还有对于测试的了解的和认识。还有是否投了其他公司,是否拿了offer,对于改行怎么看,拿了offer是不是会去用友之类的问题。没有特别专业的问题。
面试官问的面试题: 1.视频单面,用的赛码
2.首先先请自我介绍一下
3.对于自我介绍中的一些内容进行提问
4.针对简历上的实习经历进行提问
5.实习过程中对ERP的认识和理解
6.是否了解过测试,有多少了解
7.对于改行的看法是赛码?有没有相关忧虑?
8.校园经历(学生会干部)具体做了什么
9.是否有投其他公司,是否拿到其他offer?
10.有多大概率会选择去用友
电话面试-线上面试-线下面试
起初HR先进行初筛,在完成一切信息核对后,会考虑3-5工作日,考核内容(基本介绍,对该岗位和公司的基础认知,之后进行专业课相关的经历学习盘点,进行职位候选人的进一步筛查)大概3天左右就会邀请参与线上面试(几乎是群面,部门领导和hr)问题都是关于岗位的任职和具体专业课程,以及个人志愿对于该职业的未来规划与目前的岗位状态,可以收获什么等)
等线下面试在1-2周内,会对接相关手续和住宿等如果决定和沟通完成。
1)该职业的认识
2)为什么选择这个部门
3)对此有什么期待
4)个人信息核查,个人陈述
5)对公司的介绍,并沟通面试者的行业了解情况
招聘软件投递,有两次面试,一面经理面,二面是hr线上面试,面试官很好说话
面试2天后出结果
只问了一点技术的问题,数据库了解哪些,常用的linux命令
聊了很多项目经历以及校园经历