Home
avatar

.Xqq

项目、竞赛、简历面试指南

项目、竞赛、简历面试指南

程序员指南.从入门到入土

确定方向

  1. 算法工程师

学习技术

编程学习的套路

无论学习任何编程技术,都可以遵循以下步骤:

  1. 首先了解这个技术是做什么的?有什么优缺点?适用于什么场景?(感兴趣或者和目标无关的技术可以不学)

  2. 能够被动使用该技术完成项目或者解决问题(要多写代码,会用技术,被动是指别人让你用这个技术(比如网上现成的项目或教程视频)

  3. 进一步了解该技术的特性,并能熟练运用,主动用该技术去解决对应的问题(阅读官方文档,进阶书籍等)

  4. 了解该技术的核心思想、关键模块、各模块的作用(阅读官方文档、技术文章、进阶书籍等)

    可以在掘金看一些技术文章,比如系统的设计思想等!

  5. 阅读该技术的源码,由整体到局部逐渐深入(利用开源仓库)

  6. 能够在源码的基础上修改源码/定制开发,或者给该项目贡献代码或插件(可以多和原作者、项目的issues区讨论交流)

  7. 自己实现类似的技术(推陈出新)

积累经验

项目

建议

最好能够独立从 0 到 1 完成至少一个项目,需求分析、技术选型、初始化、增删改查、单元测试、部署上线、不断完善和优化

如何获得项目经历

  • 星球项目

  • 课堂大作业

  • 视频/书籍/文章教程

  • 参加竞赛

  • 给开源项目贡献

    • issues区答疑
    • Bug修复
    • 新增功能
    • 负责模块
  • 开源项目仿写

    • 学会在github上找自己想要的项目(部署,运行,学习实现项目的亮点功能)
    • 完全仿写
    • 学习新增功能
    • 用另一种语言实现(可以是实现项目,也可以是实现一种组件)
  • 仿站(模仿现有的网站去实现同等功能的网站)

  • 自主实现

什么样的项目有竞争力?

  • 个人参与度高(负责)
  • 和你要求职的方向高度吻合
  • 用的技术较为丰富,且每个技术用的恰到好处,为了业务而应用
  • 有某个方面或比较全面的优化点,如性能、稳定性、可用性等
  • 设计算法很巧妙
  • 能够解决某个问题,比如业务场景:帮忙抢到火车票,技术问题:自动化构建平台、组件库,行业问题:广告计算平台等
  • 前沿,比如区块链、前端流行的低代码平台,后端流行的云原生等
  • 项目影响力,比如star 数,用户数等
  • 项目创意好,市面上没有且有一定作用的东西

项目优化思路

  • 性能
  • 可靠性
  • 可用性
  • 成本
  • 系统复杂度
  • 可伸缩性
  • 稳定性
  • 可维护性
  • 可扩展性
  • 体验
  • 并发
  • 合理性
  • 容错性
  • 可观测性
  • 安全性

竞赛

算法类竞赛:

  • 蓝桥杯
  • ACM
  • LeetCode周赛
  • 百度之星
  • CodeM
  • 阿里天池
  • Kaggle

作品类竞赛

  • 计算机应用能力大赛
  • 微信小程序应用开发赛
  • 三创赛
  • 互联网+
  • 挑战杯

求职 - 投递简历

投递时间

完整时间:

  • 2 月 - 5 月
    • 春招,面向大四/研二等即将毕业的同学
    • 暑期实习,面向非毕业生
  • 6 月 - 11 月
    • 秋招,面向大四/研二等即将毕业的同学
    • 寒假实习,面向非毕业生

黄金时间(提前批):

  • 2 - 3 月
  • 7 - 9 月

投递目标

建议多投简历,从相对不想去的公司开始投递

  • 岗位
  • 公司
  • 部门
  • 技术匹配度
  • 地点

投递渠道

  • 官网
  • 官方公众号(比如腾讯招聘)
  • 内推(建议部门直推):相关公众号,leetcode等平台
  • 宣讲会(线上/线下)
  • 找工作的网站
    • 实习僧
    • 牛客网,有很多互联网公司的内推机会
    • 智联招聘
    • Boss直聘
    • 前程无忧
    • 拉钩招聘

求职 - 参加笔试

只是形式,简历够好,不笔试也能面试

  • 性格测试
  • 算法题
  • 技术性的题目(选择、判断)

准备面试

自我介绍

1 分钟左右,在自我介绍中突出自己的技术/业务/项目优势,并且在结尾抛出“钩子”,吸引面试官提问

  • 你是谁?
  • 经历:表达出你做过什么?会哪些技术?
  • 突出重点

项目介绍

  1. 为什么要做这个?体现出自主性:如为了巩固知识,为了完成某个自我需求
  2. 从 0 到 1 实现了这个项目,用了哪些技术?
  3. 有哪些亮点?做了哪些优化?

算法

大厂基本必考

即使没空刷算法,也要了解每个算法和数据结构做了什么?

建议每道题目 40 - 1 小时

20分钟左右思考,没有思路就看题解

技术

八股文,(技术相关问题)

面试软技巧

  • 礼貌精神
  • 不要抢话,想清楚再回答

面试过程

自我介绍

项目考察

技术考察

算法考察

不仅要说出思路,且要能运行通过

业务考察

设计一个地铁轨道交通系统?

设计一个实施弹幕系统?

设计一个排行榜、点赞?

可以在掘金看一些技术文章,比如系统的设计思想等!

反转问答

  • 对你的建议
  • “收集”一些信息
  • 询问一些题目的解法

面试复盘

面试之后要做的事

  1. 快速回想并记录自己面试中遇到的题目和心得,最好可以写面经
  2. 保证自己没答出的题目下次面试可以回答出来

优秀面经

  • 星球同学的分享
  • 牛客网
  • LeetCode

Offer选择

尽可能多地争取offer,不要拿到一家就躺平

选择因素

  • 薪资
  • 地点
  • 技术匹配度
  • 行业
  • 工作时长
  • 公司口碑
  • 部门口碑
  • 领导口碑
  • 业务口碑
  • 稳定性
  • 情怀

参考平台

  1. 校招薪水 Offer Show 小程序
项目 竞赛 简历面试

喜欢这篇文章嘛,觉得文章不错的话,奖励奖励我!

支付宝打赏支付宝微信打赏 微信