Skip to content

Instantly share code, notes, and snippets.

@Colorfulnia
Last active April 11, 2025 22:14
Show Gist options
  • Save Colorfulnia/fa0ef1247c9424a57cffebe9fe425dcf to your computer and use it in GitHub Desktop.
Save Colorfulnia/fa0ef1247c9424a57cffebe9fe425dcf to your computer and use it in GitHub Desktop.

美国运通内部工作机制分享会

介绍和办公室设置

  • 会议开始时讨论了今天在家办公。提到G今天在家远程工作。
  • G被介绍为美国运通(AMEX)的一名团队成员,具体负责支付模块的工作。

背景和目的

  • 会议的目的是帮助DA准备与沃尔玛的面试。DA简历上的最新项目与AMEX支付模块有关,他需要在面试中解释其流程。
  • 需要注意的是,DA是一名安卓开发人员,所以不需要知道所有的技术细节,但应该了解从用户操作到应用响应再返回的整个流程。

解释支付模块的流程

  • 总体概述
    • AMEX支付网络主要由两个部分组成:文件处理和交易处理。
  • 交易处理
    • 当使用卡片进行交易(例如在沃尔玛),这些交易会被编入一个文件并发送到AMEX。这通常在每周或每月底进行,具体取决于零售商的偏好。
    • AMEX对这些文件进行多项验证,如检查命名规范和确保所有必需字段都存在。
    • 如果文件通过验证,则被接受;如果未通过,则被拒绝并返回给零售商进行修改。
  • 批处理
    • 接受的文件以批次形式处理。例如,如果有100笔交易,可能会分成25笔一批处理。
    • 每批内的每笔交易都在毫秒内处理。如果交易未能在此时间内完成处理,则会超时。
  • 交易验证
    • 在处理过程中,每笔交易都会被验证。这包括检查卡会员详情、收单行详情(沃尔玛的银行)、发卡行详情(卡会员的银行)及其他数千个字段。
    • 这些验证由一个微服务执行。
  • 定价服务
    • 验证后,交易被发送到定价服务进行实际计算。
    • 每个组织(例如沃尔玛)有不同的费用设置。例如,AMEX可能对每笔交易向沃尔玛收取0.5%的费用。
    • 定价服务计算这些费用,可以为AMEX带来可观的收入。
    • 定价计算完成后,交易被发送到下游网络进行资金处理。

具体问题和澄清

  • 微服务和API:澄清安卓不直接使用微服务,但支付模块可能调用微服务进行数据检索和处理。
  • 应用流程:详细解释了交易从用户刷卡到最终结算和费用计算的流程。

详细的应用程序演示

  • 用户界面(UI)
    • 支付模块UI使用Jetpack Compose设计,提供现代和响应式的界面。
    • 主要功能
      • 转账:允许用户转账。
      • 付款:使用户可以进行付款。
      • 现金流查看:显示当前月的现金流图表。
  • 图表表示
    • 现金流图表使用不同颜色区分资金流入(接收)和流出(转账)。
    • 信用(收到的资金)显示为绿色,借记(转账的资金)显示为红色,待处理的交易显示为中性颜色。
  • 商业支票部分
    • 此部分包括转账和存款按钮、查看最新交易和检查账户详情。
    • 交易以颜色编码显示:信用为绿色,借记为红色,待处理金额为中性色。
  • 通知
    • 通知徽章表示更新和警报,例如新交易或重要账户信息。
  • 支付接受
    • 显示未偿还金额和逾期金额。
    • 提供查看账户详情、创建发票和发送支付链接的选项。
  • 平板电脑支持
    • 应用程序设计支持平板电脑UI,确保跨设备无缝体验。

反馈和信心建立

  • 强调在解释过程中提高自信和面部表情。
  • 建议微笑着介绍自己,并自信地讲述模块内容。
  • 鼓励充分练习并熟悉应用程序,以在面试中提升信心。

结论

  • 最后的建议是复习支付模块的细节,彻底了解流程,并练习解释,以确保在面试中能够流畅且自信地展示。

American Express Internal Work Mechanism Share Session

Introduction and Office Setup

  • The session begins with a discussion about working from home. It is mentioned that G is working remotely today.
  • G is introduced as a team member at American Express (AMEX), specifically working on the payment module.

Context and Purpose

  • The purpose of the session is to help DA prepare for an interview with Walmart. DA’s latest project on his resume is related to the AMEX payment module, and he needs to explain its flow if asked during the interview.
  • It’s noted that DA is an Android developer, so he doesn’t need to know all the technical details but should understand the overall flow from user action to app response and back.

Explaining the Payment Module Flow

  • General Overview:
    • The AMEX payment network comprises two main components: file processing and transaction processing.
  • Transaction Processing:
    • When a card is used for a transaction (e.g., at Walmart), these transactions are compiled into a file and sent to AMEX. This is done at the end of the week or month, depending on the retailer’s preference.
    • AMEX performs several validations on these files, such as checking naming conventions and ensuring all required fields are present.
    • If the file passes validation, it is accepted; if not, it is rejected and sent back to the retailer for corrections.
  • Batch Processing:
    • Accepted files are processed in batches. For example, if there are 100 transactions, they might be processed in batches of 25.
    • Each transaction within a batch is processed in milliseconds. If a transaction fails to process within this timeframe, it times out.
  • Transaction Validation:
    • During processing, each transaction is validated. This includes checking card member details, acquirer details (Walmart’s bank), issuer details (card member’s bank), and thousands of other fields.
    • This validation is performed by one of the microservices.
  • Pricing Service:
    • Once validated, transactions are sent to the pricing service, where actual calculations occur.
    • Each organization (e.g., Walmart) has a different fee setup. For instance, AMEX might charge Walmart 0.5% per transaction.
    • The pricing service calculates these fees, which can generate significant revenue for AMEX.
    • After pricing calculations, transactions are sent to downstream networks for money handling.

Specific Questions and Clarifications

  • Microservices and APIs: It’s clarified that Android does not use microservices directly but the payment module may call microservices for data retrieval and processing.
  • Application Flow: Detailed explanation of how transactions move from the user’s card tap to final settlement and fee calculations is provided.

Detailed Application Walkthrough

  • User Interface (UI):
    • The payment module UI is designed using Jetpack Compose, providing a modern and responsive interface.
    • Main Features:
      • Transfer Money: Allows users to transfer funds.
      • Make Payment: Enables users to make payments.
      • Cash Flow View: Displays a graph showing cash flow for the current month.
  • Graph Representation:
    • The cash flow graph distinguishes between money in (received) and money out (transferred) using different colors.
    • Credits (money received) are shown in green, debits (money transferred) in red, and pending transactions in a neutral color.
  • Business Checking Section:
    • This section includes buttons for transferring and depositing money, viewing latest transactions, and checking account details.
    • Transactions are displayed with color-coding: green for credits, red for debits, and neutral for pending amounts.
  • Notifications:
    • Notification badges indicate updates and alerts, such as new transactions or important account information.
  • Payment Acceptance:
    • Displays outstanding and past due amounts.
    • Options to view account details, create invoices, and send pay links are provided.
  • Tablet Support:
    • The application is designed to support tablet UI with the same features available as on mobile devices, ensuring a seamless experience across devices.

Feedback and Confidence Building

  • Emphasis on improving confidence and facial expressions during explanations.
  • Suggested to introduce oneself with a smile and to speak confidently about the module.
  • Encouraged to practice thoroughly and become familiar with the application to boost confidence during interviews.

Conclusion

  • Final advice to review the payment module details, understand the flow thoroughly, and practice the explanation to ensure a smooth and confident presentation during the interview.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment