怎么选offer,永远是一个经久不衰的话题。
最近看到一位应届毕业生小伙伴在知乎上的询问,对其他小伙伴也很有借鉴意义:
目前 offer选择有——家乡20万左右年薪的研究所,和北上深40-50万左右年薪的几个私企。
研究所是国家单位,福利好、轻松稳定;互联网行业私企呢,给的薪资直接差一倍多。
去了私企不可能再有去研究所的机会了;但去研究所说不定以后还可能跳槽去私企。
回家乡发展不用考虑买房买车;去北上深肯定是要租房的,可能以后还得考虑在当地买房。
高薪不稳定 vs 低薪稳定,应该怎么选?
今天和实习生闲聊,他的一个前辈也给了他类似的建议:
互联网很快就要被打压了,你还是去做中学老师吧。
这句话对不对呢?
要看说话人的角色,对方是在私企打拼了几十年的老职场人,经历过太多颠簸,他认为这种工作环境不应该推荐给年轻人。
相反,他听说做老师很好,所以推荐年轻人去当老师。
他不知道的是:老师行业也很卷啊。有些学校老师备课都搞996了。周末要上班,放假要培训,朝7晚9,家长还会一直来电话。而且老师的饭碗是稳,但是薪资和这两个offer相差大很多
很多时候,如果前辈推荐他没有做过的行业,大概率是围城里外的向往,他并不了解真实的情况。
那么如何挑选合适的offer呢
没有什么选择是完美的,你注定会牺牲一些东西换取另一些在你看来更加重要的东西。
那么你能牺牲什么?
有什么东西在你看来,你绝对不能牺牲?
我往往会建议咨询这种问题的小伙伴,自己列个表:
首先,把所有自己关注的因素都罗列出来,然后针对不同的offer给予打分。
比如私企薪酬更高,就打5星;但工作稳定性更差,就打2星。
其次,给每个你关注的因素打权重。
比如,说虽然私企薪酬更高,5星,但是你家里有矿、不在乎钱,那这个权重就打1分;
如果你的身体状况不适合加班,必须工作生活平衡,那么这个权重就打5分。
最后,汇总给个总分出来。
一般来说,都能比出一个赢家。
如果在现在的公司里遇到了问题,希望离开。
也可以套用这个公式。
先列出来针对性现在公司的表格,哪些因素是你最为关注的。
然后看,老东家好在哪些因素上?差在哪些因素?
哪些项目是我最看重的?并给与对应的权重。

这是我2016年,在Mercer,给自己老东家做的一个List。
我最看重的是职业发展、领导靠谱程度和工作生活平衡(养娃中年人,请大家理解)。
列出这个表格后,你就会发现我基本没有跳槽的动力。
我的绝大部分需求,在公司内部,都是可以满足的。
这套理论,我给很多咨询者都分享过。
但是……
根据我的咨询经验,绝大部分小伙伴们,在列这个表格的同时,就在思考给这些因素打权重,最后拍出来的结果往往是:
我特别看重第一份工作的职业发展机会;
我最看重更多薪水
我孩子不到2岁,要照顾孩子。
咨询者大概率会发现某一个因素太重要了。
这个因素的权重应该是100,1000,甚至1万。为了实现这个因素,其他因素都可以放弃。
我称之为 X 因素。
解决完这三点问题,相信你清楚了解了两家公司的分数,对比分数你就知道哪家公司更加适合你,你个人更喜欢哪家公司
做为一名测试人,我想分享一下这些年来,我对于技术一些归纳和总结,和自己对作为一名高级自动化测试需要掌握那些技能的笔记分享,希望能帮助到有心在技术这条道路上一路走到底的朋友!
软件测试理论知识是开展测试工作的理论依据和支撑,是测试很重要的阶段必须掌握的技能。

linux系统是主要的服务端操作系统,也是从事IT岗位的大部分人员必须具备的基本技术之一。

数据库作为软件系统必备的应用系统,在诸如接口测试、性能测试等等过程中往往需要操作数据库,验证数据正确性完整性,都离不开数据库的增删改查操作,在项目部署阶段数据库还需要配合项目部署。在性能测试、接口自动化测试中都需要数据库的支撑。
推荐没有编程基础的朋友可以学习Python语言
Python语言的学习内容包含以下知识点:
基本数据结构:数字、字符串、类型判断、类型转换、切片、字符串格式化、数值运算、位置参数和关键字参数;
组合数据结构:列表、元组、范围、字典、集合、不可hash对象、解包、内存地数据结构址、不可变数据

接口测试本质也是功能测试的一种,通过脚本或者工具,模拟客户端对服务端接口进行调用。因为是从接口层测试,所以能更早的发现问题,从而提高测试效率,降低修复成本。

性能测试的技术要求很高,不仅仅要对性能测试的指标、测试分类、测试设计有很深刻的理解。还要学习系统业务和架构相关知识,这样才能更好的设计性能场景。

越来越多的项目和系统通过移动端来提供服务,移动端的软件质量越来越重要,App自动化测试已经成为自动化测试的重要内容。借助Appium,使得App自动化测试和Web自动化测试有很多相通之处,不过作为测试工程师,依然需要掌握移动端应用的工具和特性。

续集成和持续测试是一个在迭代中构建、测试产品并修复Bug的过程。它有助于团队在开发阶段的初期发现缺陷,这时的缺陷通常相对不那么复杂,并且更容易被解决。通过持续集成和持续测试,可以尽早地将错误风险降至最低,并加快交付更好质量的软件。
最近断断续续整理了一些软件测试学习资源,主体内容包含:测试文档、测试工具安装包、自动化测试视频教程、性能测试、接口测试、面试技巧、简历模版、全套面试题等知识内容。目的是想了解一下大厂招聘的技术热点,不断提升学习
送给大家一句话,共勉:当我们能力不足的时候,首先要做的是内修!当我们能力足够强大的时候,就可以外寻了!
我正在学习如何使用Nokogiri,根据这段代码我遇到了一些问题:require'rubygems'require'mechanize'post_agent=WWW::Mechanize.newpost_page=post_agent.get('http://www.vbulletin.org/forum/showthread.php?t=230708')puts"\nabsolutepathwithtbodygivesnil"putspost_page.parser.xpath('/html/body/div/div/div/div/div/table/tbody/tr/td/div
总的来说,我对ruby还比较陌生,我正在为我正在创建的对象编写一些rspec测试用例。许多测试用例都非常基础,我只是想确保正确填充和返回值。我想知道是否有办法使用循环结构来执行此操作。不必为我要测试的每个方法都设置一个assertEquals。例如:describeitem,"TestingtheItem"doit"willhaveanullvaluetostart"doitem=Item.new#HereIcoulddotheitem.name.shouldbe_nil#thenIcoulddoitem.category.shouldbe_nilendend但我想要一些方法来使用
关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭4年前。Improvethisquestion我想在固定时间创建一系列低音和高音调的哔哔声。例如:在150毫秒时发出高音调的蜂鸣声在151毫秒时发出低音调的蜂鸣声200毫秒时发出低音调的蜂鸣声250毫秒的高音调蜂鸣声有没有办法在Ruby或Python中做到这一点?我真的不在乎输出编码是什么(.wav、.mp3、.ogg等等),但我确实想创建一个输出文件。
给定这段代码defcreate@upgrades=User.update_all(["role=?","upgraded"],:id=>params[:upgrade])redirect_toadmin_upgrades_path,:notice=>"Successfullyupgradeduser."end我如何在该操作中实际验证它们是否已保存或未重定向到适当的页面和消息? 最佳答案 在Rails3中,update_all不返回任何有意义的信息,除了已更新的记录数(这可能取决于您的DBMS是否返回该信息)。http://ar.ru
我在我的项目目录中完成了compasscreate.和compassinitrails。几个问题:我已将我的.sass文件放在public/stylesheets中。这是放置它们的正确位置吗?当我运行compasswatch时,它不会自动编译这些.sass文件。我必须手动指定文件:compasswatchpublic/stylesheets/myfile.sass等。如何让它自动运行?文件ie.css、print.css和screen.css已放在stylesheets/compiled。如何在编译后不让它们重新出现的情况下删除它们?我自己编译的.sass文件编译成compiled/t
我正在寻找执行以下操作的正确语法(在Perl、Shell或Ruby中):#variabletoaccessthedatalinesappendedasafileEND_OF_SCRIPT_MARKERrawdatastartshereanditcontinues. 最佳答案 Perl用__DATA__做这个:#!/usr/bin/perlusestrict;usewarnings;while(){print;}__DATA__Texttoprintgoeshere 关于ruby-如何将脚
Rackup通过Rack的默认处理程序成功运行任何Rack应用程序。例如:classRackAppdefcall(environment)['200',{'Content-Type'=>'text/html'},["Helloworld"]]endendrunRackApp.new但是当最后一行更改为使用Rack的内置CGI处理程序时,rackup给出“NoMethodErrorat/undefinedmethod`call'fornil:NilClass”:Rack::Handler::CGI.runRackApp.newRack的其他内置处理程序也提出了同样的反对意见。例如Rack
在选择我想要运行操作的频率时,唯一的选项是“每天”、“每小时”和“每10分钟”。谢谢!我想为我的Rails3.1应用程序运行调度程序。 最佳答案 这不是一个优雅的解决方案,但您可以安排它每天运行,并在实际开始工作之前检查日期是否为当月的第一天。 关于ruby-如何每月在Heroku运行一次Scheduler插件?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/8692687/
我有一个对象has_many应呈现为xml的子对象。这不是问题。我的问题是我创建了一个Hash包含此数据,就像解析器需要它一样。但是rails自动将整个文件包含在.........我需要摆脱type="array"和我该如何处理?我没有在文档中找到任何内容。 最佳答案 我遇到了同样的问题;这是我的XML:我在用这个:entries.to_xml将散列数据转换为XML,但这会将条目的数据包装到中所以我修改了:entries.to_xml(root:"Contacts")但这仍然将转换后的XML包装在“联系人”中,将我的XML代码修改为
我有一大串格式化数据(例如JSON),我想使用Psychinruby同时保留格式转储到YAML。基本上,我希望JSON使用literalstyle出现在YAML中:---json:|{"page":1,"results":["item","another"],"total_pages":0}但是,当我使用YAML.dump时,它不使用文字样式。我得到这样的东西:---json:!"{\n\"page\":1,\n\"results\":[\n\"item\",\"another\"\n],\n\"total_pages\":0\n}\n"我如何告诉Psych以想要的样式转储标量?解