关于sap:一个-SAP-开发工程师的成长史

6次阅读

共计 5663 个字符,预计需要花费 15 分钟才能阅读完成。

本文副标题:我的演讲稿 – 如何疾速上手新工作,继续晋升集体竞争力

最近我收到了 SAP 上海研究院一个部门领导的邀请,加入了一个信息素养故事分享会。我也就 ” 如何疾速上手新工作,继续晋升集体竞争力 ” 这个话题,聊了一些我集体的认识。

本文是我在分享会上的演讲稿。

大家好,我是 SAP 成都研究院的 developer Jerry. 很荣幸收到这个邀请,其实我得悉这个分享会的主题时,心里很有感触,因为我在 SAP 的工作经验里,的确会常常遇到须要疾速上手新工作的场景。我在 SAP 成都研究院工作了 15 年,先后在七个不同的 SAP 产品开发团队工作过,因而明天我想利用这个机会,和大家分享一些我过来工作中切换新课题的故事和心得。

我想从以下三方面来分享:

  1. 面对新课题,不冲突,放弃踊跃的心态
  2. 充分利用本人以往我的项目的教训
  3. 给本人一直设定学习小指标

当咱们行将和手头上开发了一段时间的产品辞别,筹备接手一个新产品时,能做到抱着踊跃的心态去拥抱变动,不是一件容易的事件。

一方面,咱们从事产品开发,破费了工夫和精力去学习其开发技术,开发工具和开发框架,以及相干的产品业务知识。切换课题和产品后,有可能面临的事实是,这些通过努力学习得来的货色,在新产品开发里临时用不上。

另一方面,新产品往往意味着又要开始学习新的开发技术,有时甚至是从头学习,比方技术栈从 ABAP 切换成 Java. 除了技术之外,咱们也须要同 Global 团队的共事,从新建设信赖和磨合。总之,咱们对接手新课题时感到不安和冲突,理论是受到了这些不确定因素的影响。

如何尽量让这些不确定性因素对本人的影响达到最小化,以踊跃的心态去面对变动呢?

我集体的心得,做好两点。

第一点,正视变动是不可避免的。古希腊哲学家赫拉克里特已经说过:Change is the only constant in life. 生存中惟一不变的就是变动自身。

其实 IT 圈子又何尝不是如此呢?

已经咱们提到微软,第一印象总是 Windows 和 Office,但当初微软的 Azure 云公台也十分的胜利。Amazon 以前给大家的印象就是一个电商公司,但现在在技术人员心里,它的云平台 AWS 仿佛比 Amazon 的电商业务更让人印象粗浅。以搜索引擎起家的 Google,它孵化出的 Kubernetes,早已成为云原生平台的相对领导者。20 年前的 SAP,简直就是 ERP 的代名词,但当初咱们不光有 S/4,还有 HANA 平台,有 SAP BTP,还有很多 SAP 收买并胜利整合的各种云产品。

再说到国内,大家如果常常关注技术圈新闻,那么也会常常看到某某公司事业部组织架构又进行调整之类的新闻。这些组织架构调整,都是企业为了应答一直变动的市场而采取的优化措施,对于员工而言,就意味着日常工作课题的切换。

由此可见,工作中的课题切换,往往是不可避免的。只有正视这个事实,咱们能力摈弃消极的心态,从容地去面对变动带来的不确定性因素。

第二点,深信这些变动,可能给本人带来更多的机会和抉择。

中国有句古话:技多不压身。从久远来看,我深信这些变动能给咱们的职场之路带来正向作用,能让本人领有更多机会去做出抉择。

我 2007 年毕业刚退出 SAP,从事的是 SAP Business ByDesign 的开发。因为程度和教训的局限,过后对 SaaS 软件的设计了解得不深。

2012 年我转到了 SAP CRM 开发团队,这是从 Cloud 产品开发向 On-Premises 产品开发的一次转型,让我有机会可能将 SaaS 和本地部署软件,这二者从设计,开发再到发版整个残缺流程的差别,进行一番比拟。

2014 年我转到了 SAP CRM Fiori 开发团队,应用的编程语言也从 ABAP 变成了 JavaScript,这让我有机会接触到了 SAP UI5 前端框架。

2016 年我被调配到 SAP CRM Addon 项目组,这个我的项目的指标是把 SAP CRM 以一个 Addon 的形式,部署到 SAP S/4HANA 上,这使我终于有机会接触到 SAP 的旗舰级产品 S/4HANA .

2017 年,我实现了 CRM Addon 项目组手头的开发工作后,退出了 SAP Cloud for Customer 的开发团队,这是 SAP 在 CRM 畛域的一个 SaaS 产品,让我有机会将之前所学的 SAP CRM 这个本地部署产品的设计和开发,同 C4C 这个云端 CRM 软件进行比拟。

2018 年,我转到了 SAP 成都研究院一个数字化翻新团队,这个团队的工作是应用不受限的各种技术,开发基于 SAP Customer Experience 产品线的各种原型利用和概念验证,这让我可能在工作中尝试应用 Docker,Kubernetes,SAP Kyma,Go 语言这些对于过后的我来说比拟新的技术来开发和部署利用。

2020 年,我退出了 SAP 电商云的前端开发团队,应用 Angular 和 TypeScript 作为我日常工作的开发框架和开发语言。这也给了我一个将 SAP UI5 和 Angular 这两个前端框架进行横向比照的机会。

我感觉我可能在 SAP 工作 15 年,始终对开发工作放弃浓重的趣味,一个起因就在于我工作课题的一直变动,让我总是有新货色去学习,有新的挑战去迎接。过来这些工作内容的变动,给我提供了很多贵重的机会,让我接触并工作于 SAP 各种产品。

那么在承受了新的课题之后,如何疾速切入新课题呢?

那就是我想要分享的第二点心得:充分利用本人以往的教训。

我始终感觉,咱们过来所积攒的产品和技术教训,都是咱们的宝贵财富。

这些咱们通过致力积攒起来的财产,就是属于集体的数字化资产。我认为所谓的信息素养(比特素养),蕴含两方面内容。一是如何从爆炸式增长的信息陆地中疾速查问出本人所需信息的能力,二是如何将这些查问到的信息,提炼,演绎,整顿,内化成本人的数字化资产。

从官网复制粘贴一些文字到本地,下载一些 PDF,从 Github 找到一些代码片断,复制粘贴到本人的工作代码中,这些都不能算是数字化资产,只能称作素材。

把这些素材进行二次加工,长久化到本人的集体知识库里,无论工夫如何流逝,想查找的时候,能够在极短时间内 (比方 30 秒内) 疾速在知识库里把对应的内容从新加载到本人大脑里,这样的内容能力算数字化资产。

就我集体而言,我喜爱把本人工作中学到的技术知识点,总结进去以博客的模式公布到 SAP 社区上。我很多时候自认为对某个技术点了解得很分明了,然而当我动笔开始写文章的时候,发现常常卡壳,起因是某些点了解得似是而非,所以把脑子里的货色长久化到知识库,生成数字化资产的过程,自身也是对所学的复盘,总结和进一步加深了解。并且内容公布到社区之后,能收到其余从业者的反馈,指出我文章里可能的谬误或者了解得不精确的中央。这些公布到社区的内容能够被搜索引擎高效地查找进去,而且永远不会失落。

对所学知识点的整顿,加工,长久化到常识仓库,能有助于把零散的知识点串成网状的常识体系,所以这么多年我始终保持在做。

每个人都有本人爱好的集体知识库管理工具,有人用 Word 和 Excel,有人用各种云笔记软件。无论什么工具,只有能满足可能高效治理和治理,就是最适宜本人的工具。

当咱们曾经在本人的集体知识库里积攒了一定量的数字化资产之后,如何在新的产品开发里高效利用它们呢?

我从 SAP Business ByDesign 转到 SAP CRM 开发时,发现这两个产品前后台开发应用的工具和框架都不同,但有一个共同点:二者后盾都基于 Business Object 模型,只是具体的建模和实现技术有差别。比方两个产品都有 Sales Order BO,两个 BO 都有低头和行我的项目节点,这些节点通过 association 关联到其余指标节点的设计也大同小异。这样一来,BO 的层级构造和节点间的关联关系,对我来说就是曾经把握的常识了,那么我就只用专一于学习如何用新工具实现 BO 模型即可。于是我在学习 CRM 产品下如何创立 BO 模型时,我会先翻一翻以前 BYD 零碎里创立 BO 模型的知识库文章。尽管具体的 Tcode 和开发细节不同,但二者都基于 ABAP,且目标都雷同,为利用开发人员提供简洁高效的建模和业务逻辑编写。把握了这个要点,我在学习新的 BO 开发框架时,就晓得重点应该关注这个框架的哪些方面。

起初我转到 CRM Fiori 开发团队后,工作就是把传统 CRM UI,依照 Fiori Design Guideline,采取 SAP UI5 框架从新实现一次。因为无论传统的 CRM UI 还是新的 Fiori UI,都是运行在 CRM 零碎上,所以后盾业务逻辑没有变动,因而我只用从头开始学 SAP UI5 的开发常识。

从 CRM Fiori 开发团队转到 SAP Cloud for Customer(简称 C4C) 开发团队后,因为 C4C 前台 UI 的开发技术是 UI Designer + SAP UI5,而 UI Designer 我在 SAP Business ByDesign 开发时就曾经学习过了,而后在 CRM Fiori 开发团队又学会了 SAP UI5,而 C4C 后盾的 CRM 业务知识,我之前在 CRM 开发团队也有学习过,因而这是我这么屡次转岗里最顺利的一次,学习起来很轻松。在工作过程中我遇到的一些 UI Designer 和 SAP UI5 的问题,其实我之前在 SAP Business ByDesign 和 SAP CRM Fiori 开发团队工作时,都深入研究过。所以再次遇到这些相似问题时,我不须要从头去调试定位问题,或者是网上搜寻答案,而是基于以前本人钻研的根底和资料来解决,这样节俭了不少工夫。

当我转到 SAP 电商云的 Angular 开发团队之后,因为我曾经有了 SAP UI5 这个前端框架的应用教训,所以在学习 Angular 开发时,对于它的数据双向绑定,部分页面刷新,页面路由,生命周期钩子函数等畛域,我都能够类比 SAP UI5 的实现来印证和比拟。因为有了之前 SAP UI5 这个前端框架的学习根底,在学习 Angular 时,我就晓得前端框架学习的侧重点是什么,而不至于迷失在 Angular 官网像字典一样的学习文档里。并且我会揭示本人去注意,以前开发人员应用 SAP UI5 框架的一些痛点,Angular 是否有解决方案了呢?

我想分享的第三点,就是在切入新课题之后,如何高效学习呢?

除了充分利用好本人的集体知识库之外,我的另一个心得就是,一直给本人设定小指标。

这里的小指标,相似大家在日常麻利我的项目开发中一个个 Jira task,须要破费的工夫以小时计,比方四到六小时。

显然,成为 SAP CRM 技术专家不能算是一个小指标。理解 SAP CRM 前后台交互原理也不能算成是一个小指标。但咱们能够把理解 SAP CRM 前后台交互原理拆解成这些小指标:

  1. 找到 CRM UI 某个具体的按钮被点击之后,UI 层接管该申请的入口函数
  2. 弄清楚从 UI 入口接管用户申请,到 UI 将该申请分发给后盾执行前,这一过程经验了哪些函数调用
  3. 找到后盾接管用户申请的入口函数

也就是说,这一个个小指标,必须是短时间内可能比拟容易地胜利实现,并且有分明的能够度量的规范,来掂量其是否执行胜利。一次又一次的小胜利会一直给咱们踊跃的心理暗示,让咱们的学习越来越有劲头。

比方我从 ABAP 开发转到 SAP UI5 开发时,须要把握 JavaScript 这门语言。看书是零碎学习的办法之一,但如果咱们给本人设定一个小指标每天看《JavaScript 从入门到精通》20 页, 那么简略地看完 20 页,可能合上书之后,感觉本人并没有什么播种。

我过后的做法是,用 JavaScript 实现 23 种设计模式,这就是 23 个小指标。当我用 JavaScript 本人实现了单例模式后,到网上一对答案,发现竟然有多达七八种各不相同的用 JavaScript 实现单例模式的写法,有的实现奇妙利用了 JavaScript 语言的个性,精妙无比。于是我又减少了一些新的小指标,学习并把握这些网上的单例实现,从例子中学习 JavaScript 的语言个性。

给外围性能代码搭建脚手架,也是我给本人制订小指标的起源之一。SAP 产品的很多外围性能代码,必须满足肯定的前置条件能力触发。在咱们开发这些性能代码时,每次调试都要反复从浏览器上进行一些繁琐的操作,能力使咱们的断点触发。我喜爱做的事件就是,钻研如何通过代码来满足这些前置条件,应用代码模仿或者实现和用户在浏览器上点击屏幕一样的成果。我编写一些能够间接执行的脚手架程序,执行之后,能间接触发我在性能代码里设置的断点,省去每次调试之前在浏览器上进行反复乏味的人工操作。

因而给外围代码搭建脚手架,能够拆解成下列小指标:

  1. 找出所有外围代码依赖的前置步骤或条件
  2. 钻研这些前置步骤是否能够通过代码实现或 Mock
  3. 用代码实现每一个前置步骤的执行
  4. 在脚手架利用里调用前置步骤的模仿执行步骤,最初触发外围代码
  5. 将脚手架利用封装成能够通过命令行的形式调用,方便使用
  6. 和团队确认该脚手架利用是否能够被团队的自动化集成测试用例重用

总之,信息化时代,良好的比特素养可能帮忙各行各业的职场人员进步工作效率。咱们作为开发人员,同其余行业相比具备一个得天独厚的劣势,那就是咱们能够利用手中的代码,尽可能的让咱们的工作自动化起来。代码是咱们的敌人,能够帮忙咱们从一些繁琐反复,单调乏味的工作中解放出来,让咱们能省下更多的工夫,投入到技术附加值更高的工作中去。

这里给大家分享一本书《比特素养》,作者介绍了一些如何进步本人工作效率的办法和思路。大家有趣味能够去看一看。

以上就是我明天的分享,感激大家凝听。

更多浏览

  • 2007 年 1 月 11 日~2022 年 1 月 11 日,我在 SAP 成都研究院这 15 年
  • 在一个除了本人之外其余共事全在国外的全球化开发团队工作,是一种什么样的体验
  • 一个 SAP 开发工程师的 2022 年中总结 – 四十不惑,不忘初心
  • 一个 SAP 成都研究院开发工程师的 2021 年度总结:既没有厚积,也未能薄发
  • 【合集】SAP 成都研究院开发工程师们精彩纷呈的工作和生存片段
  • 【合集】Jerry Wang 2018~2021 四年期间的 SAP 技术文章合集
  • 想比拟全面地学习 SAP XXX,能领导下从哪儿开始学习吗?
  • 作为一名 ABAP 资深参谋,下一步能够抉择哪一门 SAP 技术作为主攻方向?
  • 一个 SAP 开发工程师十余年的技术写作之路回顾
正文完
 0