• NaN years ago - link
    by @ghost

    Contributions

    NBI MOCA

    Dev Experience Improvement

    Datapath Language Server VS Code Extension

    https://code.amazon.com/packages/DatapathLanguageServerVsCode/

    Basic language support for Datapath in VS Code

    Features:

    • Syntax highlighting
    • Hover view to preview implementation
    • Right click a view to "Go to implementations" to open source file in IDE
    • Report arity problems with comparison and arithmetic operators
    • Report basic syntax errors, such as invalid characters or brace mismatch
    • Preview relevant views by hovering namespaces or incomplete views
    • Completion suggestions for keywords and built in operators
    • Completion suggestion for possible views
    Datapath VS Code Extension

    https://code.amazon.com/packages/DatapathVsCode

    Enables to adhoc query execution from within VsCode. Run > Datapath: Execute query on an open .dp file to execute the query and open the results in a side panel.

    Features:

    • > Datapath: Execute query
    • > Datapath: Execute selection
    • > Datapath: Execute test file
    • > Datapath: Execute test
    • Query results panel displays the query that was executed for easy reference
    • Each query execution displays in its own window for easy reference of query history
    • Configure Datapath sandbox options, such as a) setting endpoint to local dev box, integ, or prod endpoints; b) Datapath weblab overrides; c) timeout

    Personalization Options Discovery Design Project, fullstack

    Designed project to implement the requirements for the Personalization Options Discovery project.

    Project Objective: Amazon shoppers lack insight as to what customization options exist for a given ASIN on both search and detail page. This project surfaces customization summaries in two areas: AFO (or ASIN Faceout, surfaced by search results), and DP (Detail Page).

    Milestones
    • Wrote thorough and extensive design document, held multiple design reviews, and created revisions to address each new concern raised during each meeting.
    • Enabled calling GCSS from Datapath, unlocking potential to call GCSS from Detail Page, Search, and other environments. This work can now be used in House of Cards, Voyager, and predefined customizations. It is a great milestone for acheiving progress on our long term roadmap. This project took 6 weeks and required extensive troubleshooting, creative problem solving, navigating extreme ambiguity, and making many decisions based on inferences about the BSF Codigo client and BSF Datapath client generation framework. These issues were documented to improve any future onboarding efforts of services to Datapath.
    • Interfaced with Amazon API schema working group to revise and merge contract changes for new CustomizationsSummary and CustomizationsDiscoverySummary subresources
    • Implemented Datapath changes required to populate subresources.
    • Implemented Java changes in PUIS to surface customization summaries in SCX.
    • Implemented Java changes to surface customization summaries in DPX.
    • Interfaced with SCX team to manage SIP process and contribute code as away work.
    • Setup Datapath pipeline for use with Typescript Datapath in order to implement recursive view. This enables other team members to contribute any Typescript Datapath required for other projects.
    Challenges
    • Working cross team with HIP and Elcano due to ambiguous ownership of the variation options component and gathering design feedback from those teams as additional stakeholders.
    • Identified existing issue with text truncation for the SCX options summary, navigated ambiguity with requirements, and worked cross-team and cross-role with several stakeholders to reach a resolution while seeking diverse input.
    • Handle SCX and DPX usecases in parallel. In addition, parallelized backend and frontend work to identify problems and ambiguity early.
    • Tasked with implementing Phase II of two separate projects, one for SCX and one for DPX, for which I had no prior context. This required a deep dive and speedy ramp up on the purpose and implementation of Phase I across many environments and codebases in many different languages.
    • Ramp up on SCX and PUIS architecture, set up for local SCX environment, and away work in SCX codebase. The recent migration from AFS to PUIS made navigating documentation for the SCX archictecture a complex task.
    • Ramp up on Datapath, develop skill in Datapath for more complex data manipulation.
    • Handle obscure, incomplete, or outdated wiki and Sage information with regards to many issues that arose from generating the BSF and Datapath client for GCSS.
    • Handle complex requirements for Datapath view, including aggregating and deduping summaries, rank priority, different component types, variation precedence, weblab triggering logic, and whether or not to suppress color.
    • Wrote utility script that accepts a PM managed attributes metadata spreadsheet as input and generates: 1) Datapath code to surface those attribute metadata; 2) tests for the same; and 3) string translation source files. This 1) enables PMs to make many revisions without introducing overhead; 2) reduces ops burden and effort required to maintain, update, or add new PCS attributes; and 3) reduces human mistakes and failure points by automating tedious processes.
    • Handled friction from SWG on design for new AAPI subresources. Design revisions were required to move all of the logic for constructing the summary from the Java layer to the Datapath layer.
    • Persuaded others that creating plural string translations would result in the best CX for the customer and that well curated translations are key to the success of the experiment. This decision ensures a first class CX at the cost of additional complexity and maintenance burden. SDE III agreed to disagree and commit.
    • Navigated interfacing with FMA and Twister teams in order to acquire permissions for required Datapath views.

    CPC delivery promise, fullstack

    Project Objective: Increase customer visibility and incentivize ordering by surfacing the delivery promise in the customizations modal.

    Wrote code to call Prisma to render content to match the buybox delivery promise on Mobile and desktop.

    $35,653,305 in projected GCCP lift with 98% confidence (material Amazon profits).

    Challenges
    • Learning Prisma architecture
    • Debugging delivery promise block to determine what parameters to pass to Prisma in order to keep the rendered delivery promise consistent between CPC and BuyBox

    Other

    • Rio Compliance, fullstack
      • Updated Handmade widgets to be compliant with new storewide style guidelines
    • Rewrote Handmade Artisan Card and Kata, adopting new tech and sharing knowledge in the process. Fullstack
    • Launched Gestalt Gift Recommendations Widget, fullstack
      • Updated code and configure for cloud auth
      • Configured content creatives and percolate
    MOCA Specific Wikis

    Victoria Solar

    High level contributions

    • Owned and implemented design for Getting Starting Widget Phase II to increase Seller engagement with useful tools available in B2B Central. Fullstack.
    • Designed the Action Tracker component and plan for Front End integration tests.
    • Designed and implemented Grow Amazon Business Sales Card
      • Grow AB Sales Developer Guide
      • Surfaces sales metrics to customers, incentivizing re-investment in B2B products
      • Config based conversion of currency for cross-region analytics
    • Owned and implemented design for Business Product Opportunities Card. Fullstack.
    • Identified general Front End improvements, designed and implement changes.
    • Supported devs on projects long since leaving the team. For instance, I wrote this guide for @clinqife when she was unable to test the service locally and no remaining team members had knowledge on how to run the server. MBOP Horizonte Dev Env Setup
    • Developed clear SOP for smoke tests for B2B Datacentral Service - wiki
    • Owned design for B2B Traffic Report. Design documents:
    • Setup ElasticSearch clusters for B2B Datacentral Service, configured Kibana
    • Individually owned and implemented design for new B2B Datacentral Service data pipeline redesign. Supporting design docs:
      • Kinesis to ElasticSearch to Andes and DJS with quick results cached in Dynamo and then fetched via Coral or via ElasticSearch queries
      • Andes Ingest Design
    • Individually owned and implemented design for a new user B2B Central preferences store as onboarding assignment. Fullstack.
    • Developed B2B Central SPA frontend integration tests plan, research, and implementation
    • Launched MBOP in EU5
      • Launched MBOP Reports in EU5 so B2B Sellers in those regions can generate demographic reports and recommended item reports to help increase their GMS.
    • Implemented B2B Prime Upsell Quantity Discounts value prop modal as away team work. Took great care to implement complicated UX mock exactly to spec, pixel-for-pixel. Fullstack.
    • Designed intern project, supported and evaluated intern Saum Emami throughout hiring and onboarding project for Seller Central Cards
    • Owned design for Business Impact Engine so seller can understand which actions they take result in the most lift. For instance, setting Quantity Discounts or allowing RFQs.
    • Audited and prepared Solar Q4 Peak Readiness document for 10 owned services
    • Created new report for industry buyer segment analysis in B2B Central. Fullstack.
    • Implementation to internationalize Marketplace Business Opportunities Report in order to reach Sellers in their native language and generate reports for all marketplaces. SIM
    • Implemented fullstack changes for new Business Accelerator Recommendation Report Widget. SIM. Fullstack
    Solar Design & Research Documents
    Solar Tasks or specific contributions
    • Created re-usable Angular route guard for B2B Central
    • Solved the B2B Central SPA 403/404 issue by surfacing the KeysToDeepMerge feature
    • Setup step flow to be able to be defined with YAML instead of inline json via the fromyaml_tojson filter
    • Migrate to Python 3.5 for HorizonteMonsMarketplaceB2bRegistrationWbebApp
    • Streamline B2B enrollment for existing sellers - SIM
    • Write reports Cradle/Dryad Scala big data jobs, for instance, Sales breakdown by Industry for Japan, which presented unique challenges when working with Japanese regions.
    • Took initiative to solve many UX painpoints and bugs
    Solar Specific Wikis
    Sim
    • 426 resolved SIM sprint tasks (as of 12/05/2023)
    Trouble Ticket

    As of 03/25/2023

    Leadership
    • Participated in ASU outreach programs, panels, and recruiting efforts
    • Introduced the concept and implementation of Sprint retrospectives to team process
    • FEAT Advocate
      • Implemented new front end advocate role to help spread knowledge and awareness of Front End tech to organization
    • Took initiative to lead Victoria Solar sprints for 9 months.
    • Implemented SCRUM master rotation so every developer is able to get experience running Sprints, Groomings, Retros and Sprint Plannings
    • Introduced staggered standups to org so individuals could attend multiple standups if working cross-team.
    • Implemented policies to streamline standups
    • Led UX best practices for Solar
    • Steven Shay's onboarding buddy
    • Create new MCM/Template process for Solar
    • Presented multiple Hackathon presentations
    • ABSX Leadership Principle Award Recepient
      • Februrary 2020 - Earn Trust
      • January 2020 - Bias for Action
    • Accolades
      • 2022 - Naomi Siegal - For Handmade's Artisan Accelerator proof of concept VP-level goal of moving Handmade to the cards framework
      • 2020 - Vishnu Sudha - For uncovering a Seller facing issue on Seller Central where an information tab was incorrectly showing on Japan region, deep diving issue, and taking initiative to solve the issue within a day.

    General

    • Writes comprehensive documentation, wikis, and sage posts to avoid the tribalization of knowledge
    • Supports devs from external teams
    • Brings comprehensive typescript / React knowledge to teams, shares expertise with peers and supports them

    Internal Knowledge & Skills Developed

    Datapath, Cloudformation, LPT, NAWS, MAWS, Apollo, ElasticSearch, Kibana, Scala, Percolate, Content Symphony, AST, Prisma, AAPI2, npm-pretty-much, Odin, SAMToolkit, CfnBuild, AMZNWikiClient, Coral, Katal, Kata, SpaceCasino, Cards, DPX, PULP, Luminos, Mons, SellerCentral, Scala, Andes, Hoot, Dryad, EDX, Datanet, DJS, Redshift, Tortuga, MWS, Cradle, Datacraft, AUI, FRP

    Documentation & Knowledge Share

    Sage

    As of 02/24/2024

    • Silver leaf contributor on Sage
    • 2627 Points
    • Received 138 answer votes
    • 18 accepted answers
    • 43 total answers contributed
    • 55,230 total views across all questions answered
    • 7 silver badges, 22 bronze badges
    • Sharing knowledge on Sage breaks has a compound effect in breaking down silos and unblocking future devs

    Wiki Guides or Tutorials

    263 wiki pages (guides, tips, meeting minutes, design docs, troubleshooting docs, dev setup, research docs, generic notes, etc)

    Notable wikis

    In-depth guides:

    Quick guides:

    Troubleshooting Guides:

    New hire resources, tools, and general tips

    Tampermonkey Scripts
    • Sprint Filter
      • Allows you to favorite any sprint in your active sprints tab and adds the favorited sprints to the main nav bar.
    • Highlight Assignee
      • Add orange border to sprint board tasks assigned to you to easily view all tasks while being able to identify your own quickly.
    Linux scripts

    Tools & Automation

    wiki-sync tool

    Allows you to automatically publish any changes to your local markdown notes to your user wiki for sharing with coworkers. Auto sync/upload local MD notes to wiki

    Features:

    • Automatically generates tags for easily searching all wiki pages you've generated via this script.
    • Watch local directory & sync .md notes on save
    • Supports backfilling an existing directory
    • Supports creating a custom dot-config to enable transcluding a page onto all generated wiki pages.
    • Easily install via npm install and configure with a guided setup wizard

Contributions

NBI MOCA

Dev Experience Improvement

Datapath Language Server VS Code Extension

https://code.amazon.com/packages/DatapathLanguageServerVsCode/

Basic language support for Datapath in VS Code

Features:

  • Syntax highlighting
  • Hover view to preview implementation
  • Right click a view to "Go to implementations" to open source file in IDE
  • Report arity problems with comparison and arithmetic operators
  • Report basic syntax errors, such as invalid characters or brace mismatch
  • Preview relevant views by hovering namespaces or incomplete views
  • Completion suggestions for keywords and built in operators
  • Completion suggestion for possible views
Datapath VS Code Extension

https://code.amazon.com/packages/DatapathVsCode

Enables to adhoc query execution from within VsCode. Run > Datapath: Execute query on an open .dp file to execute the query and open the results in a side panel.

Features:

  • > Datapath: Execute query
  • > Datapath: Execute selection
  • > Datapath: Execute test file
  • > Datapath: Execute test
  • Query results panel displays the query that was executed for easy reference
  • Each query execution displays in its own window for easy reference of query history
  • Configure Datapath sandbox options, such as a) setting endpoint to local dev box, integ, or prod endpoints; b) Datapath weblab overrides; c) timeout

Personalization Options Discovery Design Project, fullstack

Designed project to implement the requirements for the Personalization Options Discovery project.

Project Objective: Amazon shoppers lack insight as to what customization options exist for a given ASIN on both search and detail page. This project surfaces customization summaries in two areas: AFO (or ASIN Faceout, surfaced by search results), and DP (Detail Page).

Milestones
  • Wrote thorough and extensive design document, held multiple design reviews, and created revisions to address each new concern raised during each meeting.
  • Enabled calling GCSS from Datapath, unlocking potential to call GCSS from Detail Page, Search, and other environments. This work can now be used in House of Cards, Voyager, and predefined customizations. It is a great milestone for acheiving progress on our long term roadmap. This project took 6 weeks and required extensive troubleshooting, creative problem solving, navigating extreme ambiguity, and making many decisions based on inferences about the BSF Codigo client and BSF Datapath client generation framework. These issues were documented to improve any future onboarding efforts of services to Datapath.
  • Interfaced with Amazon API schema working group to revise and merge contract changes for new CustomizationsSummary and CustomizationsDiscoverySummary subresources
  • Implemented Datapath changes required to populate subresources.
  • Implemented Java changes in PUIS to surface customization summaries in SCX.
  • Implemented Java changes to surface customization summaries in DPX.
  • Interfaced with SCX team to manage SIP process and contribute code as away work.
  • Setup Datapath pipeline for use with Typescript Datapath in order to implement recursive view. This enables other team members to contribute any Typescript Datapath required for other projects.
Challenges
  • Working cross team with HIP and Elcano due to ambiguous ownership of the variation options component and gathering design feedback from those teams as additional stakeholders.
  • Identified existing issue with text truncation for the SCX options summary, navigated ambiguity with requirements, and worked cross-team and cross-role with several stakeholders to reach a resolution while seeking diverse input.
  • Handle SCX and DPX usecases in parallel. In addition, parallelized backend and frontend work to identify problems and ambiguity early.
  • Tasked with implementing Phase II of two separate projects, one for SCX and one for DPX, for which I had no prior context. This required a deep dive and speedy ramp up on the purpose and implementation of Phase I across many environments and codebases in many different languages.
  • Ramp up on SCX and PUIS architecture, set up for local SCX environment, and away work in SCX codebase. The recent migration from AFS to PUIS made navigating documentation for the SCX archictecture a complex task.
  • Ramp up on Datapath, develop skill in Datapath for more complex data manipulation.
  • Handle obscure, incomplete, or outdated wiki and Sage information with regards to many issues that arose from generating the BSF and Datapath client for GCSS.
  • Handle complex requirements for Datapath view, including aggregating and deduping summaries, rank priority, different component types, variation precedence, weblab triggering logic, and whether or not to suppress color.
  • Wrote utility script that accepts a PM managed attributes metadata spreadsheet as input and generates: 1) Datapath code to surface those attribute metadata; 2) tests for the same; and 3) string translation source files. This 1) enables PMs to make many revisions without introducing overhead; 2) reduces ops burden and effort required to maintain, update, or add new PCS attributes; and 3) reduces human mistakes and failure points by automating tedious processes.
  • Handled friction from SWG on design for new AAPI subresources. Design revisions were required to move all of the logic for constructing the summary from the Java layer to the Datapath layer.
  • Persuaded others that creating plural string translations would result in the best CX for the customer and that well curated translations are key to the success of the experiment. This decision ensures a first class CX at the cost of additional complexity and maintenance burden. SDE III agreed to disagree and commit.
  • Navigated interfacing with FMA and Twister teams in order to acquire permissions for required Datapath views.

CPC delivery promise, fullstack

Project Objective: Increase customer visibility and incentivize ordering by surfacing the delivery promise in the customizations modal.

Wrote code to call Prisma to render content to match the buybox delivery promise on Mobile and desktop.

$35,653,305 in projected GCCP lift with 98% confidence (material Amazon profits).

Challenges
  • Learning Prisma architecture
  • Debugging delivery promise block to determine what parameters to pass to Prisma in order to keep the rendered delivery promise consistent between CPC and BuyBox

Other

  • Rio Compliance, fullstack
    • Updated Handmade widgets to be compliant with new storewide style guidelines
  • Rewrote Handmade Artisan Card and Kata, adopting new tech and sharing knowledge in the process. Fullstack
  • Launched Gestalt Gift Recommendations Widget, fullstack
    • Updated code and configure for cloud auth
    • Configured content creatives and percolate
MOCA Specific Wikis

Victoria Solar

High level contributions

  • Owned and implemented design for Getting Starting Widget Phase II to increase Seller engagement with useful tools available in B2B Central. Fullstack.
  • Designed the Action Tracker component and plan for Front End integration tests.
  • Designed and implemented Grow Amazon Business Sales Card
    • Grow AB Sales Developer Guide
    • Surfaces sales metrics to customers, incentivizing re-investment in B2B products
    • Config based conversion of currency for cross-region analytics
  • Owned and implemented design for Business Product Opportunities Card. Fullstack.
  • Identified general Front End improvements, designed and implement changes.
  • Supported devs on projects long since leaving the team. For instance, I wrote this guide for @clinqife when she was unable to test the service locally and no remaining team members had knowledge on how to run the server. MBOP Horizonte Dev Env Setup
  • Developed clear SOP for smoke tests for B2B Datacentral Service - wiki
  • Owned design for B2B Traffic Report. Design documents:
  • Setup ElasticSearch clusters for B2B Datacentral Service, configured Kibana
  • Individually owned and implemented design for new B2B Datacentral Service data pipeline redesign. Supporting design docs:
    • Kinesis to ElasticSearch to Andes and DJS with quick results cached in Dynamo and then fetched via Coral or via ElasticSearch queries
    • Andes Ingest Design
  • Individually owned and implemented design for a new user B2B Central preferences store as onboarding assignment. Fullstack.
  • Developed B2B Central SPA frontend integration tests plan, research, and implementation
  • Launched MBOP in EU5
    • Launched MBOP Reports in EU5 so B2B Sellers in those regions can generate demographic reports and recommended item reports to help increase their GMS.
  • Implemented B2B Prime Upsell Quantity Discounts value prop modal as away team work. Took great care to implement complicated UX mock exactly to spec, pixel-for-pixel. Fullstack.
  • Designed intern project, supported and evaluated intern Saum Emami throughout hiring and onboarding project for Seller Central Cards
  • Owned design for Business Impact Engine so seller can understand which actions they take result in the most lift. For instance, setting Quantity Discounts or allowing RFQs.
  • Audited and prepared Solar Q4 Peak Readiness document for 10 owned services
  • Created new report for industry buyer segment analysis in B2B Central. Fullstack.
  • Implementation to internationalize Marketplace Business Opportunities Report in order to reach Sellers in their native language and generate reports for all marketplaces. SIM
  • Implemented fullstack changes for new Business Accelerator Recommendation Report Widget. SIM. Fullstack
Solar Design & Research Documents
Solar Tasks or specific contributions
  • Created re-usable Angular route guard for B2B Central
  • Solved the B2B Central SPA 403/404 issue by surfacing the KeysToDeepMerge feature
  • Setup step flow to be able to be defined with YAML instead of inline json via the fromyaml_tojson filter
  • Migrate to Python 3.5 for HorizonteMonsMarketplaceB2bRegistrationWbebApp
  • Streamline B2B enrollment for existing sellers - SIM
  • Write reports Cradle/Dryad Scala big data jobs, for instance, Sales breakdown by Industry for Japan, which presented unique challenges when working with Japanese regions.
  • Took initiative to solve many UX painpoints and bugs
Solar Specific Wikis
Sim
  • 426 resolved SIM sprint tasks (as of 12/05/2023)
Trouble Ticket

As of 03/25/2023

Leadership
  • Participated in ASU outreach programs, panels, and recruiting efforts
  • Introduced the concept and implementation of Sprint retrospectives to team process
  • FEAT Advocate
    • Implemented new front end advocate role to help spread knowledge and awareness of Front End tech to organization
  • Took initiative to lead Victoria Solar sprints for 9 months.
  • Implemented SCRUM master rotation so every developer is able to get experience running Sprints, Groomings, Retros and Sprint Plannings
  • Introduced staggered standups to org so individuals could attend multiple standups if working cross-team.
  • Implemented policies to streamline standups
  • Led UX best practices for Solar
  • Steven Shay's onboarding buddy
  • Create new MCM/Template process for Solar
  • Presented multiple Hackathon presentations
  • ABSX Leadership Principle Award Recepient
    • Februrary 2020 - Earn Trust
    • January 2020 - Bias for Action
  • Accolades
    • 2022 - Naomi Siegal - For Handmade's Artisan Accelerator proof of concept VP-level goal of moving Handmade to the cards framework
    • 2020 - Vishnu Sudha - For uncovering a Seller facing issue on Seller Central where an information tab was incorrectly showing on Japan region, deep diving issue, and taking initiative to solve the issue within a day.

General

  • Writes comprehensive documentation, wikis, and sage posts to avoid the tribalization of knowledge
  • Supports devs from external teams
  • Brings comprehensive typescript / React knowledge to teams, shares expertise with peers and supports them

Internal Knowledge & Skills Developed

Datapath, Cloudformation, LPT, NAWS, MAWS, Apollo, ElasticSearch, Kibana, Scala, Percolate, Content Symphony, AST, Prisma, AAPI2, npm-pretty-much, Odin, SAMToolkit, CfnBuild, AMZNWikiClient, Coral, Katal, Kata, SpaceCasino, Cards, DPX, PULP, Luminos, Mons, SellerCentral, Scala, Andes, Hoot, Dryad, EDX, Datanet, DJS, Redshift, Tortuga, MWS, Cradle, Datacraft, AUI, FRP

Documentation & Knowledge Share

Sage

As of 02/24/2024

  • Silver leaf contributor on Sage
  • 2627 Points
  • Received 138 answer votes
  • 18 accepted answers
  • 43 total answers contributed
  • 55,230 total views across all questions answered
  • 7 silver badges, 22 bronze badges
  • Sharing knowledge on Sage breaks has a compound effect in breaking down silos and unblocking future devs

Wiki Guides or Tutorials

263 wiki pages (guides, tips, meeting minutes, design docs, troubleshooting docs, dev setup, research docs, generic notes, etc)

Notable wikis

In-depth guides:

Quick guides:

Troubleshooting Guides:

New hire resources, tools, and general tips

Tampermonkey Scripts
  • Sprint Filter
    • Allows you to favorite any sprint in your active sprints tab and adds the favorited sprints to the main nav bar.
  • Highlight Assignee
    • Add orange border to sprint board tasks assigned to you to easily view all tasks while being able to identify your own quickly.
Linux scripts

Tools & Automation

wiki-sync tool

Allows you to automatically publish any changes to your local markdown notes to your user wiki for sharing with coworkers. Auto sync/upload local MD notes to wiki

Features:

  • Automatically generates tags for easily searching all wiki pages you've generated via this script.
  • Watch local directory & sync .md notes on save
  • Supports backfilling an existing directory
  • Supports creating a custom dot-config to enable transcluding a page onto all generated wiki pages.
  • Easily install via npm install and configure with a guided setup wizard