作者:小傅哥
博客:https://bugstack.cn
沉淀、分享、成长,让自己和他人都能有所收获!😄
每每准备面试,总有些小伙子甩出自己的豆包项目,不是Xxx管理系统,就是某某自动化平台。就像这几年自己的经历都放在 CRUD 编写上了,走的那是加班的道,干的都是体力的活。
但就是这样的豆包项目,把简历塞满都不想给你面试机会。面试要啥,面试要的是你经历过复杂的业务场景、要是你参与过牛逼的技术方案。咋,那你业务场景不复杂、技术深度又不行。那面啥呢 🤨?面的是你那满嘴的虎狼之词吗?
其实不只是工作几年,哪怕是现在的应届生,简历上要满是图书管理系统、学生用户中心系统、课程管理系统,都没法在卷出一个高薪的 Offer 了,当然那些外包工作还是可以的。不过像小傅哥认识的伙伴,入职字节跳动、入职京东物流、入职腾讯微信,真的是在上学阶段就积累了很多编程经验和编程思维,也参与学习到很多有业务场景复杂又有技术深度的项目上。
如果你也有想点干货项目,在简历上撑厂子,接着往下看,小傅哥给你讲。
面试前不要上来就打开word往里怼东西,你这会压根就没想好你要写啥东西,更没有想过这份简历意味着什么。
其实每一份简历都是一份明码标价的商品,那这既然是商品,要卖给人家。总得在简历上看到卖点吧。那你的卖点是什么呢?你的卖点是过往经历中积累的开发经验和落地能力,公司招聘你可以让你快速的在岗位上体现价值。
但可能你一开始也没想好自己有啥卖点,那怎么办?打开一个 xmind 呀,把自己的过往经历先梳理进去。以下这些都是你在编写项目时需要注意的重点事项,否则就会流水账一样的描述
简历,看的就是你的过往经历,通过过往经历展示你的技术实力和技术影响力。所以通常你可以通过这样几个方面来包装简历;
开源项目:编写技术插件、开源技术组件,这些东西不需要太大,只要是你开源出去,并且有相应的数据,那么就是有价值的。并且这样是你个人技术影响力的体现。比如像小傅哥基于 IDEA Plugin 插件开发的学习,编写了一个 vo2dto 插件;解决对象转换问题。选定对象批量织入“x.set(y.get)”代码,帮助开发者自动生成vo2dto转换代码。
组件项目:有些粉丝伙伴的简历里缺少技术,而且项目数量也不够。其实这个时候你可以编写一些 SpringBoot Starter 技术组件项目。想这一些组件都是对业务场景中同类共性功能的凝练,开发成共用组件降低研发成本,提高产研交付效率的。你既可以选择学习这里的内容使用,可以基于自己的学习做扩展处理。
业务项目:如果你本身手里没有什么项目,根本不够面试使用,那么就非常有必要学习一下 Lottery 微服务分布式抽奖系统。像这样一个项目在各个场景中都有使用,比如;电商、出行、外卖、旅游等各类需要促活、拉新的场景都会有一个对应的营销抽奖系统。并且这样的项目复杂度也不低,它需要承载较大体量的并发,以及频繁迭代。所以在系统设计上有复杂度,在技术实现上有深度。那么这样的项目写到简历里既不会特别大,面试又有的说。
技术项目:在计算机网络中,网关 (Gateway)是转发其他服务器通信数据的服务器,接收从客户端发送来的请求时,它就像自己拥有资源的源服务器一样对请求进行处理。而API网关也是随着对传统庞大的单体应用(All in one)拆分为众多的微服务(Microservice)以后,所引入的统一通信管理系统。用于运行在外部http请求与内部rpc服务之间的一个流量入口,实现对外部请求的协议转换、参数校验、鉴权、切量、熔断、限流、监控、风控等各类共性的通用服务。如果你能了解并开发出一套这样的系统,那在简历中可是非常亮眼。
这些硬核的技术项目,都是小傅哥从开发到架构师,依靠这些年的编程经验和技术积累,所创作出来分享给大家的。而每一个项目的完成都需要将近3-8个月的周末和假期,你如果真的想提升自己的能力,真的可以跟随一下这样的项目锻炼自己的编程思维和开发能力。
当然我也不扯淡,这确实需要花一点钱💰,但你跟着我就是在跟着一个架构师在学习。并且我也相信能够给大家带来超过该价格的价值 。举个例子,渐进式手把手带大家做进大厂才可能看得见的项目、有笔记有源码、有问题可以提,这比单独买一个课程或一套源码要值得多。其实都不到大城市一节补习班的钱,哪怕把我的课程时长换算成培训机构的课时,也是便宜的超级多。
当我使用Bundler时,是否需要在我的Gemfile中将其列为依赖项?毕竟,我的代码中有些地方需要它。例如,当我进行Bundler设置时:require"bundler/setup" 最佳答案 没有。您可以尝试,但首先您必须用鞋带将自己抬离地面。 关于ruby-我需要将Bundler本身添加到Gemfile中吗?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/4758609/
如何在buildr项目中使用Ruby?我在很多不同的项目中使用过Ruby、JRuby、Java和Clojure。我目前正在使用我的标准Ruby开发一个模拟应用程序,我想尝试使用Clojure后端(我确实喜欢功能代码)以及JRubygui和测试套件。我还可以看到在未来的不同项目中使用Scala作为后端。我想我要为我的项目尝试一下buildr(http://buildr.apache.org/),但我注意到buildr似乎没有设置为在项目中使用JRuby代码本身!这看起来有点傻,因为该工具旨在统一通用的JVM语言并且是在ruby中构建的。除了将输出的jar包含在一个独特的、仅限ruby
我注意到像bundler这样的项目在每个specfile中执行requirespec_helper我还注意到rspec使用选项--require,它允许您在引导rspec时要求一个文件。您还可以将其添加到.rspec文件中,因此只要您运行不带参数的rspec就会添加它。使用上述方法有什么缺点可以解释为什么像bundler这样的项目选择在每个规范文件中都需要spec_helper吗? 最佳答案 我不在Bundler上工作,所以我不能直接谈论他们的做法。并非所有项目都checkin.rspec文件。原因是这个文件,通常按照当前的惯例,只
我在我的Rails项目中使用Pow和powifygem。现在我尝试升级我的ruby版本(从1.9.3到2.0.0,我使用RVM)当我切换ruby版本、安装所有gem依赖项时,我通过运行railss并访问localhost:3000确保该应用程序正常运行以前,我通过使用pow访问http://my_app.dev来浏览我的应用程序。升级后,由于错误Bundler::RubyVersionMismatch:YourRubyversionis1.9.3,butyourGemfilespecified2.0.0,此url不起作用我尝试过的:重新创建pow应用程序重启pow服务器更新战俘
我实际上是在尝试使用RVM在我的OSX10.7.5上更新ruby,并在输入以下命令后:rvminstallruby我得到了以下回复:Searchingforbinaryrubies,thismighttakesometime.Checkingrequirementsforosx.Installingrequirementsforosx.Updatingsystem.......Errorrunning'requirements_osx_brew_update_systemruby-2.0.0-p247',pleaseread/Users/username/.rvm/log/138121
我已经像这样安装了一个新的Rails项目:$railsnewsite它执行并到达:bundleinstall但是当它似乎尝试安装依赖项时我得到了这个错误Gem::Ext::BuildError:ERROR:Failedtobuildgemnativeextension./System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/rubyextconf.rbcheckingforlibkern/OSAtomic.h...yescreatingMakefilemake"DESTDIR="cleanmake"DESTDIR="
我想设置一个默认日期,例如实际日期,我该如何设置?还有如何在组合框中设置默认值顺便问一下,date_field_tag和date_field之间有什么区别? 最佳答案 试试这个:将默认日期作为第二个参数传递。youcorrectlysetthedefaultvalueofcomboboxasshowninyourquestion. 关于ruby-on-rails-date_field_tag,如何设置默认日期?[rails上的ruby],我们在StackOverflow上找到一个类似的问
我将我的Rails应用程序部署到OpenShift,它运行良好,但我无法在生产服务器上运行“Rails控制台”。它给了我这个错误。我该如何解决这个问题?我尝试更新rubygems,但它也给出了权限被拒绝的错误,我也无法做到。railsc错误:Warning:You'reusingRubygems1.8.24withSpring.UpgradetoatleastRubygems2.1.0andrun`gempristine--all`forbetterstartupperformance./opt/rh/ruby193/root/usr/share/rubygems/rubygems
我正在尝试从Postgresql表(table1)中获取数据,该表由另一个相关表(property)的字段(table2)过滤。在纯SQL中,我会这样编写查询:SELECT*FROMtable1JOINtable2USING(table2_id)WHEREtable2.propertyLIKE'query%'这工作正常:scope:my_scope,->(query){includes(:table2).where("table2.property":query)}但我真正需要的是使用LIKE运算符进行过滤,而不是严格相等。然而,这是行不通的:scope:my_scope,->(que
假设我有这个范围:("aaaaa".."zzzzz")如何在不事先/每次生成整个项目的情况下从范围中获取第N个项目? 最佳答案 一种快速简便的方法:("aaaaa".."zzzzz").first(42).last#==>"aaabp"如果出于某种原因你不得不一遍又一遍地这样做,或者如果你需要避免为前N个元素构建中间数组,你可以这样写:moduleEnumerabledefskip(n)returnto_enum:skip,nunlessblock_given?each_with_indexdo|item,index|yieldit