后端/技术岗面试经验(共10条)

  • 软件工程师面试经验(高密市) - 山东豪迈机械科技股份有限公司
    2025-04-07 15:08:52 | 校园招聘
    面试过程:

    面试形式是腾讯会议线上面试,一共两个面试官,首先就是自我介绍和一些个人问题,比如家是哪里的甚至还问了有没有男/女朋友,然后就是根据简历问了一些技术问题,总体难度不算大。最后问了一下期待薪资方面

    面试官问的面试题:

    山东豪迈机械科技股份有限公司软件工程师面试题

    先问了一些项目上的问题,然后根据项目上你的一些技术点再深层次挖了一下,对我技术上的问题就是简单问了一下RocketMQ这一部分的实现以及和Kafka有什么不同,为什么没选择Kafka。
    其次就是问了八股:
    1.简述一下Ioc和AOP原理
    2.讲述一下你熟悉的动态规划问题
    3.讲述一下银行家算法
    4.简单说一下数据库的增删改查语句

  • 数据库工程师面试经验(潍坊) - 山东豪迈机械科技股份有限公司
    2025-03-19 19:43:50 | 校园招聘
    面试过程:

    面试过程
    面试官开场
    面试官:你好,欢迎来参加今天的面试。我是 [面试官姓名],今天主要想了解一下你在数据库方面的技术能力和项目经验。你可以先简单介绍一下自己吗?
    自我介绍
    你:您好,非常感谢您给我这次面试机会。我叫 [你的名字],毕业于 [毕业院校],专业是 [专业名称]。我有 [X] 年的数据库开发和维护经验,熟悉 MySQL、Oracle 和 SQL Server 等主流数据库管理系统。在 [上一家公司],我主要负责数据库设计、性能优化以及数据迁移等工作。我参与过多个大型项目,例如 [项目名称],通过优化 SQL 查询和索引,成功将系统响应时间缩短了 [X]%。我对数据库技术非常热爱,一直在不断学习和提升自己,希望能在贵公司继续发展我的职业生涯。
    技术问题环节

    面试官问的面试题:

    山东豪迈机械科技股份有限公司数据库工程师面试题

    问题 1:请介绍一下数据库的范式,以及它们的作用。
    你:好的。数据库的范式是数据库设计中用于规范化数据结构的一系列规则和标准,目的是减少数据冗余、提高数据一致性。常见的范式有第一范式(1NF)、第二范式(2NF)和第三范式(3NF)。
    第一范式(1NF):要求表中的每一列都是不可再分的原子数据项,即表中的每个字段都是不可拆分的最小单位。例如,不能将姓名和年龄放在一个字段中,而应该分开为两个字段。1NF 的作用是确保数据的原子性,为后续的范式奠定基础。
    第二范式(2NF):在满足 1NF 的基础上,要求表中的非主键列完全依赖于主键。也就是说,不能存在部分依赖。例如,在一个订单表中,如果订单号是主键,那么订单日期、客户姓名等信息都应该完全依赖于订单号,而不是部分依赖。2NF 的作用是消除部分依赖,进一步减少数据冗余。
    第三范式(3NF):在满足 2NF 的基础上,要求表中的非主键列之间不存在传递依赖。也就是说,非主键列之间不能相互依赖。例如,在一个学生表中,如果学生姓名依赖于学号,而学号又依赖于班级编号,那么这种传递依赖是不符合 3NF 的。3NF 的作用是消除传递依赖,进一步提高数据的一致性和完整性。
    问题 2:请解释一下数据库索引的工作原理,以及如何选择合适的索引。
    你:数据库索引是一种数据结构,用于提高数据库查询的效率。它类似于书籍的目录,通过在数据表上创建索引,数据库可以快速定位到需要的数据,而不需要扫描整个表。
    索引的工作原理是通过在表的列上创建一个索引结构(如 B 树、哈希表等),将列的值与数据行的物理位置关联起来。当执行查询时,数据库会先在索引中查找符合条件的索引项,然后通过索引项快速定位到数据行的位置,从而提高查询速度。
    选择合适的索引需要考虑以下几个因素:
    查询频率:对于经常被查询的列,创建索引可以显著提高查询性能。例如,如果一个表的某个字段经常出现在 WHERE 子句中,那么为该字段创建索引是一个不错的选择。
    数据分布:如果一个列的值分布均匀,那么创建索引的效果会更好。例如,对于一个性别字段(只有“男”和“女”两个值),创建索引的意义不大,因为数据分布过于集中。
    数据更新频率:索引会占用额外的存储空间,并且在数据更新时需要维护索引。如果一个表的数据更新非常频繁,那么过多的索引可能会导致性能下降。因此,在选择索引时需要权衡查询性能和数据更新性能。
    复合索引:如果查询条件涉及多个列,可以考虑创建复合索引。复合索引的列顺序也很重要,一般按照查询条件中列的使用频率和过滤性来确定顺序。
    问题 3:你如何优化一个慢查询?
    你:优化慢查询是一个系统的过程,通常包括以下几个步骤:
    分析执行计划:首先,我会使用 EXPLAIN 或其他工具查看慢查询的执行计划,了解查询的执行过程。通过执行计划,我可以发现查询中存在的问题,例如全表扫描、笛卡尔积、不合理的连接方法等。
    优化 SQL 语句:根据执行计划的结果,我会对 SQL 语句进行优化。例如,避免使用 SELECT *,尽量使用具体的字段名;合理使用索引,避免在索引列上使用函数或计算;优化 JOIN 操作,确保连接条件正确且高效。
    优化数据库设计:如果 SQL 语句本身没有问题,我会检查数据库的设计。例如,是否表设计合理,是否存在冗余字段或表;是否需要对表进行分区,以提高查询性能。
    调整数据库参数:在某些情况下,数据库的配置参数也会影响查询性能。例如,调整缓存大小、内存分配等参数,可以提高数据库的性能。
    硬件优化:如果以上方法都无法解决问题,我会考虑硬件优化。例如,增加服务器的内存、使用更快的磁盘等,以提高数据库的性能。

  • C++软件工程师面试经验(山东) - 山东豪迈机械科技股份有限公司
    2025-03-19 19:46:24 | 校园招聘
    面试过程:

    先是自我介绍,后介绍其中一个项目,依据该项目问相关问题,如opencv预处理,还问了几个项目中用到的算法并介绍,然后依次问了其他几个项目,数据库方面问的最多

    面试官问的面试题:

    山东豪迈机械科技股份有限公司C++软件工程师面试题

    opencv预处理实现了什么;介绍cnn;灰度化与二值化的作用;数据库关键字,事务及两表之间相关操作用代码还是用触发器实现更好;以上是依据项目问的。
    八股文问的少且简单,C++的引用和指针的区别,宏定义的作用

  • 软件开发面试经验(潍坊) - 山东豪迈机械科技股份有限公司

    2025-10-14 | 校园招聘

  • cae结构工程师面试经验(潍坊) - 山东豪迈机械科技股份有限公司

    2024-10-26 | 招聘会

  • 软件开发面试经验(潍坊) - 山东豪迈机械科技股份有限公司

    2023-03-09 | 校园招聘

  • arm软件工程师面试经验(潍坊) - 山东豪迈机械科技股份有限公司

    2022-10-15 | 校园招聘

  • 性能仿真工程师面试经验(潍坊) - 山东豪迈机械科技股份有限公司

    2022-08-01 | 校园招聘

  • 软件工程师面试经验(高密) - 山东豪迈机械科技股份有限公司

    2022-03-19 | 校园招聘

  • 软件工程师面试经验(潍坊市) - 山东豪迈机械科技股份有限公司

    2024-01-03 | 校园招聘

1   共 1 页

最后更新时间:2025-10-14