后端工程师.MGN Pak - RBG - 数字透支.零售银行集团-P
Dev Engineer (Backend).MGN Pak - RBG - Digital Overdrafts.Retail Banking Group-P
职位职责
为实现Mashreq在信息技术领域的战略,交付并维护IT应用程序和服务。该职位类别的工程师以敏捷方式工作,通过小组协作交付短周期的完整IT产品。
- 能够根据经验独立完成任务,但在解决复杂问题方面存在困难
- 尚未完全具备独立解决新问题的能力
- 需要(课堂)培训来学习新技能
- 在教程和文档的帮助下能够独立工作
- 掌握多种工程技能(ATDD、分析、设计、测试脚本、编码、同行评审等)
后端开发工程师(BE)负责系统后台的运作。他们的职责是将应用程序与所有必要的系统和服务集成,并为系统的前端部分提供干净且易于使用的API。尽管他们的工作通常对用户不可见,但他们对应用程序的功能、性能和可扩展性负有全部责任。他们懂得如何编写干净现代的API,与遗留系统集成,并操作数据库。
- 关键成果领域
- 利用其技术专长和经验,为所有冲刺活动(计划、细化、回顾、演示)做出贡献
- 与团队讨论为满足待开发IT产品的功能性和非功能性需求所需的内容
- 开发IT产品,按照客户意愿和IT部门内部目标执行单元测试,并审查同事的IT产品
- 设计、构建和测试IT产品(包括功能、性能、弹性和安全性测试)并进行自动化
- 对所管理的IT产品执行生命周期管理(包括退役)
- 改进持续交付流程
- 解决所管理IT产品(包括技术栈)相关的事件和问题
- 搭建IT环境,在IT基础设施上部署IT产品并实施所需更改
- 建立对客户使用IT产品的监控
工作环境、框架和边界、工作关系
· 后端开发人员负责系统后台的运作。他们的职责是将应用程序与所有必要的系统和服务集成,并为系统的前端部分提供干净且易于使用的API。尽管他们的工作通常对用户不可见,但他们对应用程序的功能、性能和可扩展性负有全部责任。他们懂得如何编写干净现代的API,与遗留系统集成,并操作数据库。
查看英文原文
Job Purpose
To deliver and maintain IT-applications and –services in order to realize theMashreqstrategy in the field ofinformation technology.Engineers in this job category work in an agile way, insquadsto deliver short-cycle full-fledged ITproducts.
- Is able toperform tasks independently based onexperience, but is struggling with solving issuesconcerning complexquestions
- Is not yet fully able to tackle and independently resolve
newproblems
- Needs (classroom) training for newskills
- Works independently with the help of tutorials anddocumentation
- Shows mastery of several engineering skills (ATDD,analysis, design, test scripting, coding, peer reviewing,etc.)
The Dev Engineer (BE) is responsible for the system to work behind the scenes. Their role is to integrate the application with all required systems and services and provide clean and easy to use API for the frontend part of the system. Although their work is usually hidden from the user they bear the full responsibility for the application functionality, performance and scalability. They know how to write clean modern APIs, integrate with legacy systems and work with databases.
- Key Result Areas
- Uses his/her technical expertise and experience to contribute to all sprint events (planning,refinements, retrospectives, demos)
- Consults with the team about what is needed tofulfil the functional and non-functionalrequirements of the IT product to be developed
- Develops the IT product,performs the unit test inline with the customer’s wishes and ITarea’s internal ambitions and reviews colleagues’ ITproducts.
- Designs, builds and tests IT products (functional,performance, resilience and security tests) andautomates them.
- Performs Life Cycle Management (including decommissioning) for IT products under management
- Improves the Continuous Delivery process
- Resolves incidents and problems relating to IT products under management (including stack)
- Sets up the IT environment, deploys the IT product on the IT infrastructure and implements the required changes
- Sets up monitoring of IT product usage by the customer
Operating Environment, Framework and Boundaries, Working Relationships
· TheBack Enddeveloper is responsible for the system to work behind the scenes. Their role is to integrate the application with all required systems and services and provide clean and easy to use API for the frontend part of the system. Although their work is usually hidden from theuserthey bear the full responsibility for the application functionality, performance and scalability. They know how to write clean modern APIs, integrate with legacy systems and work with databases.
- Works within a multidisciplinary team or in an environment inwhich multidisciplinary teamwork is carried out.
- Is primarily responsible for the production (or technical
configuration) of software applications.
- The range of tasks includes the following:
- the analysis and design of the application(or the technicalconfiguration);
- coding applications and/or package integration in one programming languages, scripting languages and frameworks:
- Java Spring Boot, NodeJS, etc., functional programming inScala)
- Object-Oriented programing and engineering principles like SOLID
- Autonomous services oriented RESTful API services and performance tuning largescale apps
- Database systems, with knowledge of SQL and NoSQL stores (e.g. MySQL, Oracle, MongoDB, Couchbase, etc.)
- Integratewith JavaScript frameworks, such as React, Angular JS,etc… is a plus
- Continuous Delivery (Compile, Build, Package, Deploy);
- Test-Driven Development (TDD) and test automation (e.g.regression, functional and integration tests);debugging andprofiling;
- software configuration management and version control.
- Be an active participant in grooming and planning, to ensure that acceptance criteria areclear
- Sit together with designers, SMEs and Product Owner while user stories are developed, bringing input
- Work in an agile/scrum environment, meeting sprint commitments and contributing to the agile process
- Maintain traceability of testing activities
Problem Solving
- Ability to handle challenges and multi-task, in a high pressure & demanding environment
Decision Making Authority & Responsibility
- Take ownership of key decisions, ensuring alignment with organizational goals and stakeholder expectations.
Knowledge, Skills and Experience
- Experience as a backend developer in common languages and frameworks
- (Java Spring Boot, NodeJS, etc.), functional programming in Scala
- Deep knowledge of Object-Oriented programing and engineering principles like SOLID
- Significant experience writing and utilizing autonomous services oriented RESTful API services and performance tuning largescale apps
- Experience with database systems, with knowledge of SQL and NoSQL stores (e.g. MySQL, Oracle, MongoDB, Couchbase, etc.)
- Experience integrating with JavaScript frameworks, such as React, Angular JS, etc… is a plus
- Ability to write effective unit, integration, and API tests
- Nice to have knowledge of immutable infrastructure, infrastructure automation and provisioning tools
- Strong understanding of Agile methodologies
- Experience as a Developer on a cross-functional agile team preferred
- Strong communication skills with ability to communicate complex technical concepts and align organization on decisions
- Sound problem-solving skills with the ability to quickly process complex information and present it clearly and simply
- Utilizes team collaboration to create innovative solutions efficiently
- Passionate about technology and excited about the impact of emerging/disruptive technologies
- Wants to unleash inner self-starter and work in an environment that fosters entrepreneurial minds
- Believes in culture of brutal transparency and trust
- Open to learning new ideas outside scope or knowledge
Originally posted on Himalayas