大家好,我是程序员鱼皮。做知识分享这些年来,我看过太多简历、也帮忙修改过很多的简历,发现很多同学是完全不会写简历的、会犯很多常见的问题,不能把自己的优势充分展示出来,导致措施了很多面试机会,实在是很可惜。为此,我写了这份《程序员写简历指南(保姆级)》专栏,多达几万字,帮大家了解:如何写一份规范的程序员简历?如何在简历中增加亮点?有哪些常见的简历问题?如何利用写简历来提升自己?在投递简历或者找他人帮忙看简历之前,请先把本专栏 一字不差地完整阅读一遍 ,并且根据建议先自行修改简历,从而增加回复率。对于不急着找工作的朋友,我也建议 尽早准备一份简历 ,并且随着学习持续完善和优化,毕竟机会总是留给有准备的人。这是专栏第六章,这篇文章中,鱼皮会给大家分享两个问题:如何增加项目亮点?从哪些方面优化项目?如何增加项目亮点?可以试试下面的方法:去网上随便找一套面试题,遇到看不懂的题目或者没接触过的知识后,把它记下来针对这道题目到全网去搜题解,至少看 3 份不同的讲解以得到相对正确的解答想办法把这个面试题涉及的知识点应用到项目中在简历上补充项目经历,将自己对这个知识点的实践作为一个亮点为什么要这么做呢?看别人整理的面试题,快速 get 【企业关注的】、并且自己不熟悉的技术知识,扩展思路,而不是受限于视频教程看题解,了解这个知识的概念、应用场景、使用方法、细节和优化点趁热打铁,直接对理论进行实践,真正把知识变成自己的举个例子,比如我学后端的,刚学完 Redis 中间件,那我去搜搜 Redis 面试题,搜到一个【如何用 Redis 解决缓存雪崩?】。然后我去看题解,比如:https://blog.csdn.net/m0_37647376/article/details/118914551(随便找的一篇),了解到:缓存雪崩是什么?如何解决?然后我就把缓存雪崩的解决方案应用到项目中,比如【随机过期时间】这种方案(大 N + 小 n),给每个缓存过期时间补充一个 2 分钟以内的随机数,避免缓存集中失效~ 没错,就加个随机数这么简单!然后我就可以把这个点写到简历上啦~ 这样面试官问你这道题目的时候,你可以很自信地说自己实践过!也会对这道题目印象更加深刻。再举个前端的例子,比如搜到一题【什么是虚拟列表?】,然后去看题解:https://juejin.cn/post/6844903982742110216 ,了解到:虚拟列表是什么?为什么要用虚拟列表?怎么实现虚拟列表?然后就可以自己实现一个虚拟列表、封装成一个独立的组件,可以应用到自己的前端表格项目中,还可以开源~ 然后就可以很骄傲地写到简历上。面试官:“啥是虚拟列表?”我:“劳资写过,甚至还有开源项目!”这其实正是企业中开发项目常见的做法,搜解决方案、实践应用、分析和总结。从哪些方面优化项目?一段有亮点的项目经历绝对不能只写 “用 xx 技术完成了 xx 功能”,而是要有起伏和递进,在完成某功能的基础上进一步 优化 。应该优化什么呢?可以从以下 14 个角度 出发:1)性能:页面加载速度、接口并发量(qps / tps)、接口响应时长等方法:缓存、并发编程、异步、限流降级熔断、有损服务、CDN、数据压缩等2)成本:节约系统资源、降低 CPU / 内存 / 磁盘空间 / 带宽占用、节省机器数等方法:人工分析删除、定期删除、低频存储、淘汰策略、数据压缩等实际开发项目中,一定要有成本意识!很多同学光说优化,不考虑实际情况,这是一个错误的思维。3)可用性:尽可能地提高系统对外提供服务的时长,即提高 SLA(3 ~ 5 个 9 的高可用)参考文章:https://blog.csdn.net/terrychinaz/article/details/112976266方法:集群、主备、自动故障恢复、监控告警、容灾4)可靠性:尽可能地让系统提供可靠的服务,不要出现崩溃中断方法:集群、主备、异常处理、降级、容灾关于可靠性和可用性的区别:https://blog.csdn.net/HermitSun/article/details/921642265)稳定性:接口响应 / 操作处理时长相对固定,成功率高,响应结果保持正常方法:保证每个服务节点状态正常、性能相当(不要有的机器好有的机器垃圾导致接口时快时慢);合理规划服务调用链路,不能过长;做好技术选型,避免使用不稳定的第三方依赖6)容错性:部分节点(服务)出问题时,系统整体依然能够正常提供服务方法:集群、反向代理、故障转移7)健壮性:系统不会因为部分异常而整体崩溃方法:异常处理、进程监控(如 supervisor)8)系统复杂度:整个系统易于理解,而不是说前人离职、后人无法接手方法:软件开发原则、设计模式、系统架构设计(如微服务)、开发规范、工作流9)可维护性:使整个系统结构清晰、利于维护,出了问题也能够快速排查方法:软件开发原则、设计模式、系统架构设计(如微服务)、开发规范、工作流、抽象复用(组件化模块化)10)可扩展性:使整个系统能够轻松应对未来新增的需求及业务增长,不会牵一发而动全身方法:设计模式、架构设计、集群、分库分表、技术选型11)可观测性:能够随时观察了解系统 / 服务的运行状态、并能快速发现故障和定位异常方法:系统埋点上报、监控告警(prometheus)、ELK 日志收集、可视化分析(Grafana)12)可伸缩性:系统根据负载情况动态增加或减少节点,从而能够应对流量高峰、并在空闲时节约成本方法:K8S + Docker 容器、云原生13)用户体验:符合用户的使用习惯、提升用户对网站的满意度方法:网页性能优化、接口性能优化、懒加载、占位符、骨架屏、设备适配、浏览器兼容性、满意度调研(如 NPS)14)安全性:保证机器、服务、数据库、网络等不被恶意侵入和污染,保证数据和用户隐私的安全方法:参数校验、常用安全措施(防 XSS、CSRF、SQL 注入等)、网络防护(反 DDOS)、反爬虫、限流、黑白名单、防火墙等鱼皮带大家做的每个项目都专门总结了简历写法以及可以写在简历上的项目亮点,跟着我做项目的朋友一定要阅读参考。以上就是本章分享,有帮助的话记得点赞、收藏、送花一键三连哦~ 🌹
点赞 8
评论 0
全部评论

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务