2024年 为什么不建议新人学习ABAP

引言

每个应届生都希望自己有良好的职业发展,当他们发现前路难通时,便会寻找更好的出路。

“转码”曾经是个很火热的话题。在互联网行业高速发展的年代,转行学代码,入职大厂,升职加薪,是许多人的可以成真的梦想。而现在,行业进入平台期,不少人也开始迷茫,现在转码还值不值?

这样重要的人生选择题,我无法替他人回答。但作为一个从事了数年ABAP开发工作、甲方乙方和freelancer都做过的普通ABAP程序员,对于ABAP,本人可以给出明确的结论:转行做ABAP程序员,不值得。

本文假设读者已经知道ABAP是什么。(即ABAP是SAP公司开发的编程语言,专门用于SAP软件环境,主要用于开发SAP应用程序等等)

本文链接:https://www.cnblogs.com/hhelibeb/p/17908963.html

哪些宣传在欺骗我们

虽然ABAP是个很小众的开发语言,网上却不时有人宣传它的诸多好处,把ABAP开发说成是不为人知的好工作。譬如,

  • ABAP简单好上手,是SAP系统核心语言,是入行SAP的好选择
  • 使用SAP的公司都是大企业,入行后可以进入大企业工作
  • 大公司工作环境和待遇好,所以ABAP程序员的薪资水平高
  • 国外有很多企业需要ABAP,ABAP程序员学成后可以移民
  • 互联网行业工作强度太大,ABAP程序员工作轻松
  • Java程序员只会调包,35岁后找不到工作;ABAP程序员懂业务,越老越吃香
  • ABAP程序员可以转行业务顾问甚至从事高大上的咨询工作

高明的欺骗总是真真假假。应该承认,上面的某些话并非谎言,但是它们只在某些时间、某些前提下才成立。有些好处属于过去,有些现在可行但未来不可行,有些则不能兼得。
下面,我想谈谈ABAP的一些过去、现在和未来,最后总结这些宣传语的不当之处,以及它们存在的原因。

ABAP的衰落趋势

ABAP曾经在SAP系统中有统治性的地位,单靠ABAP,开发者就能完成用户界面(客户端/网页)、应用层和数据库(Open SQL/ABAP SQL)相关的开发,这意味着ABAP程序员可以独立完成一个SAP系统内的应用。在这个阶段(R3~NetWeaver),ABAP非常重要,但这已经是很久以前的事情。

随着时间的推移,前端和后端的需求更加专业化,ABAP已经难以适应。大约十年前左右SAP推出了Fiori和HANA,它们逐渐在用户界面和数据库方面占有越来越重要的地位,ABAP只能在应用层保留自己的位置。相应的是,Javascript和SQL在SAP开发中的占比越来越高。

另一项对ABAP打击很大的变化是云。同样在2010年代,SAP转向云,收购了多个云产品,并且发展了SAP BTP、S4/HANA Cloud等产品。ABAP难以满足云产品中的一些要求,如开放性、CI/CD、分布式等,因此它也日渐不重要起来。

市场需求变化

TIOBE - 编程语言排名 很好地展现了ABAP的没落历史。在2006年,ABAP排名第15,作为一个SAP专门语言,这个排名相当难得,也反映了ABAP曾经的成功。而在2023年12月的排行中, ABAP仅排名44位,马上就要跌出统计范围(前50)。

在招聘方面,虽然本人没有查到长期的统计数字,但因长期关注招聘信息,可以感觉到ABAP的需求在最近几年逐渐走低。2021年因为特殊原因可能形成了一个短暂的需求高峰,而2023年则很可能是多年来的需求最低点,考虑到ABAP的长期衰落,对于2024和更远的未来的需求,我完全不乐观。

待遇和发展前景

根据统计局数字,2022年工资最高的行业是信息传输、软件和信息技术服务业。应该承认,作为广义的IT行业一份子,当前ABAP程序员的待遇在全社会中不能算差。

然而,在IT行业内部和SAP行业内部,恐怕就不是这样了。ABAP程序员的工资可能只能和C#程序员这种非互联网行业程序员比比,在SAP行业内部,ABAP则是公认的地位、待遇最低的位置,基本上要比业务顾问低一级。比如在一个项目里,如果业务顾问普遍是Senior职级,那么ABAP是达不到Senior的,只有ABAP Lead才是Senior。

至于发展前景,我们已经知道,ABAP的应用越来越窄,需求越来越少,而供给至少不变甚至变大。在这样的背景下,期待通过ABAP入职世界500强大公司,享受良好待遇,对于大多数新人而言是不现实的,尽管这在2010年代并不难。

此外,过去SAP业务顾问往往从ABAP做起,是因为只靠ABAP就可以可以独立完成SAP应用,也就是说,懂ABAP能帮业务顾问更好地完成工作。而现在开发工作更加分化和专业化,AI也使得读代码成了容易无比的事情,懂ABAP对职业发展的帮助已经非常小。如果一个人的目标是做业务,为什么他不直接去做业务,反而要在ABAP上面蹉跎呢?

国产化软件的崛起

由于ABAP是SAP的专用语言,它的生死是依赖于SAP系统的。对于SAP系统,国产替代是个热门议题。据说信创要求很多企业在2027完成对SAP的替代。对此行内人士意见不一,有人认为国产软件(如MetaERP)很快就可以替代SAP,甚至出海发展;有人认为SAP博大精深,非几年间所能替代。个人认为,无论是否替代成功,它对于ABAP的冲击都是巨大的,因为替代行为本身就会让资源会流向替代方向。

本人亲历过某家世界500强公司的替代SAP的项目(虽然只是SAP CRM,一个不太好用的SAP产品)。可以总结的几点是:

  1. SAP业务顾问几乎都顺利转移到新系统,而且继续保有自己的地位,ABAP开发则比较难。
  2. ABAP开发就算转型,也不如原本就做新系统的开发有优势,除非本来就精通Java/JS等开发(但既然如此为什么要做ABAP?)。
  3. 如果不能转型,则最好的结果是一切不变,不能期待升职加薪,更大的可能性是被裁员。

结论

经过上面的分析,我想在最后总结几个有关ABAP的基本事实。希望对ABAP有兴趣的新人能不被宣传所误导:

  • 对于SAP来说,ABAP曾经很重要,但从2010年代开始越来越不重要,衰落仍在继续。
  • ABAP已经越来越不适合作为进入SAP行业的入口。
  • ABAP程序员当前的待遇尚可,未来不乐观,绝不是越老越吃香。
  • ERP国产化的未来是未知数,无论如何需要考虑到替代行为本身对资源的占用。
  • 不能期待学了一门语言就能进大公司、享受高待遇,如果本来就进不了的话。
  • 工作强度和具体的行业、公司、领导都有关系,编程语言的影响不是那么大。

其实还有一些地方可以展开讲讲,比如说最近程序员移民的难度上升,比如SAP和ABAP本身的技术演化引起的开发人员代际差异等等。篇幅原因这里就不展开了。

只希望新毕业的网友们不要被培训机构忽悠,混淆了过去和现在、搞混了应然与实然,盲目相信“500强”、“越老越吃香”等宣传语,在迷茫中签订培训合同,然后进入这个夕阳行业,培训后领着每月1800的基本工资沦为苦工。希望大家都能找到更好的路。