Abstract & Intorduction对于校招和社招,待遇是不可不关注的一大部分。由于各个公司各方面待遇不统一,市场上出现了不同的薪酬表示方法,如到手,年包,月薪,时薪等方式即不同行业存在一定的待遇鸿沟(Pay Gap)为了解决这个问题,本文提出了一种新颖的待遇计算方法:赛文年包(SevenPackage, SP)和赛文薪(SevenSalary, SS),并在常见的领域进行了两者的对比计算Related Work先看一个网上广泛流传的段子:公务员的的20万指的是到手现金20万,此外还有2万的年终奖,2万的精神文明奖,发的米面粮油牙膏姨妈巾折2万,免费宿舍食堂一年折合2万,公积金年金一年4万,养老保险医疗保险等2万,加起来12万。公务员因为还有隐形福利,实际上远不止20万。公务员这个收入可以赚一辈子,活到80可以赚到530万。根据1公币=3国企币,1国企币=3私企币的较为客观的换算来看,楼主的这个530万相当千华为的4800万。另外华为996,楼主1055,工作时长华为是楼主的3倍,所以楼主的4800万要相当于华为的1.4亿。更不用说楼主退休保守副部级上述说法应该是挺多非互联网行业的算法,包括不限于一些国企银行来看看互联网公司的待遇,以字节跳动的硕士测开白菜25k来说吧,HR会给到一种说法:25*16+50k签字费+1.5*12房补定义这种说法的HR包为:46.8wMethod & Experiment这里定义赛文年包(SP)为:SevenPackage = (Salary + Provident + Welfare) / ( Hour * Day)赛文年包(SP) = HR包 - 个税 + 公积金 + 各类福利收入SevenSalary赛文待遇(SS) = SP / ((日工作时间 * 年工作天数))先上代码:class TaxRatio:    def __init__(self, lower_bound, upper_bound, ratio, coupon):        self.min = lower_bound        self.max = upper_bound        self.ratio = ratio        self.coupon = couponclass Tax:    MAX_SALARY = 1000 * 1000 * 1000    TAX_RATIO = [TaxRatio(0, 36000, 0.03, 0),                 TaxRatio(36000 + 1, 144000, 0.1, 2520),                 TaxRatio(144000 + 1, 300000, 0.2, 16920),                 TaxRatio(300000 + 1, 420000, .25, 31920),                 TaxRatio(420000 + 1, 660000, .3, 52920),                 TaxRatio(660000 + 1, 960000, .35, 85920),                 TaxRatio(960000 + 1, MAX_SALARY, .45, 181920)]    TAX_THRESHOLD = 5000    TAX_RATIO_BEFORE_2019 = [        TaxRatio(0, 1500, 0.03, 0),        TaxRatio(1500 + 1, 4500, .1, 105),        TaxRatio(4500 + 1, 9000, .2, 555),        TaxRatio(9000 + 1, 35000, .25, 1005),        TaxRatio(35000 + 1, 55000, .3, 2755),        TaxRatio(55000 + 1, 80000, .35, 5505),         TaxRatio(80000 + 1, MAX_SALARY, .45, 13505)    ]        def __init__(self, old_ratio=.08, medical_ratio=.02,                  unemployment_ratio=.005,                  house_funding_ratio=.07,                  insurance_upper_bound=31014,                 house_found_upper_bound=31014):        self.three_insurance_ratio = old_ratio + medical_ratio + unemployment_ratio        self.house_funding_ratio = house_funding_ratio        self.insurance_upper_bound = insurance_upper_bound        self.house_found_upper_bound = house_found_upper_bound            @classmethod    def get_tax_ratio(cls, should_tax, new=True):        ratios = cls.TAX_RATIO if new else cls.TAX_RATIO_BEFORE_2019        for tax_ratio in ratios:            if tax_ratio.min <= should_tax <= tax_ratio.max:                return tax_ratio        raise ValueError('Fail to find tax ratio for {}'.format(should_tax))    def get_social_money(self, salary):        insurance_base = self.insurance_upper_bound if salary > self.insurance_upper_bound else salary        house_funding_base = self.house_found_upper_bound if salary > self.house_found_upper_bound else salary        return insurance_base * self.three_insurance_ratio + house_funding_base * self.house_funding_ratio            def get_new_tax(self, salary, taxfree):        social_money = self.get_social_money(salary)        total_tax_free = social_money + self.TAX_THRESHOLD + taxfree        if salary <= total_tax_free:            return [0 for _ in range(12)]                res = list()        for i in range(1, 13):            already_taxed = sum(res)            should_tax = (salary - total_tax_free) * i            tax_ratio = self.get_tax_ratio(should_tax)            tax = should_tax * tax_ratio.ratio - already_taxed - tax_ratio.coupon            tax = round(tax)            res.append(tax)        return resdef calSevenSalary(infos, monthSalary, yearAwardCnt, providentRatio, otherIncome, workHourPerDay, annualHoliday, remarks=''):    tax = Tax()    income = monthSalary * (12+yearAwardCnt)    pFund = providentRatio*monthSalary    tax_per_month = tax.get_new_tax(income, 3000+pFund)    total_tax = sum(tax_per_month)    wage = income - total_tax    #print(f"收入: {income}")    #print(f"每月税: {tax_per_month}")    #print(f"年税: {total_tax}")    SevenPKG = wage + pFund + otherIncome    SevenSalary = 1000 * SevenPKG / (60*workHourPerDay*(250-annualHoliday))     print(infos, f"\t{SevenPKG/10:.2f}w", f"\t{SevenSalary:.2f}", '\t' ,remarks)    return SevenSalaryif __name__ == '__main__':        calSevenSalary('体制', 12, 2, 0.48, 50, 5, 5, '一线城市公务员')    calSevenSalary('字节', 25, 3, 0.12, 1.5*12+2*12+10, 8, 8, '测开,房补包三餐')    calSevenSalary('字节', 28, 3, 0.12, 1.5*12+2*12+10, 8.5, 8, '开发,房补包三餐,开发比测开累一点')    calSevenSalary('腾讯', 23, 2.5, 0.12, 4*12+2*12+10, 7.5, 8, '开发,养老部门版,4k房补')    calSevenSalary('华为', 25, 4, 0.04, 25*200/1000, 9, 0, '公积金按照20而不是25,换算公积金比例为4%,年终可能也是基本工资,不过考虑到加班费,这里多给点')    calSevenSalary('中兴', 18, 3, 0.05, 10, 9, 5, '一般是996,这里时间都算少了')    calSevenSalary('银行', 10, 6, 0.48, 30, 6, 5, '一般银行hr说总包都是15w左右,年终占比大')    calSevenSalary('国企', 15, 2, 0.12, 10, 7, 5, '国企hr总包一般为25w')Result根据上述段子:公务员年收入:20w现金+12w福利 = 32w,这里定义为:公务员的赛文包为32w,根据现金推测应该是一线城市收入那么如果用公务员算法:上面这位大厂测开硕士的赛文包是:到手31w+7.2w公积金+餐补2*12k+房补1*12k+商业保险1w这里对比常见的工作的SP与SS:职位    赛文包  赛文待遇 备注----------------------------体制    22.38w  3.04     一线城市公务员字节    43.00w  3.70     测开,房补包三餐字节    47.54w  3.85     开发,房补包三餐,开发比测开累一点腾讯    41.83w  3.84     开发,养老部门版,4k房补华为    40.60w  3.01     公积金按照20而不是25,换算公积金比例为4%,年终可能也是基本工资,不过考虑到加班费,这里多给点中兴    28.09w  2.12     一般是996,这里时间都算少了银行    21.48w  2.44     一般银行hr说总包都是15w左右,年终占比大国企    22.18w  2.16     国企hr总包一般为25wConclusion先跪求盲审老师放过毕设[牛泪]娱乐向文章点赞关注收藏 超50 持续完善本篇Thesis[坏笑][坏笑][坏笑]
点赞 90
评论 16
全部评论

相关推荐

07-29 12:14
门头沟学院 Java
程序员小白条:oppo不用想了,经常看92都挂的
点赞 评论 收藏
分享
07-29 14:09
门头沟学院 Java
我爱o泡我爱o泡o泡果奶ooo
26加瓦鼠鼠:三个offer了,停手吧,回头是岸
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务