Skip to content
SYS-02B2B electronic-component trading

NewPower Trading Platform

NewPower Worldwide · via C3S Software

NewPower Worldwide's trading platform gives enterprise customers real-time stock and pricing data for electronic components. The work here was spearheading the vendor integrations that feed it, and engineering the concurrency of part-number lookups.

  • Distributed systems
  • Vendor integrations
  • Concurrency
  • Performance engineering
Illustration · not a screenshot of client software. Illustration of vendor feeds arriving over REST, SFTP and web scraping into an integration layer, queued, processed by concurrent workers, and published as stock and pricing data.
Client
NewPower Worldwide
Engaged via
C3S Software
Role
Software Engineer
Engagement
C3S Software · Nov 2022 – Present
Stack
  • Java
  • Spring Boot
  • Microservices
  • ELK
Public site
newpowerww.com

Context

NewPower Worldwide runs a microservices-based B2B platform for electronic components. Its enterprise customers rely on it for real-time stock and pricing data.

That data arrives through vendor integrations, which made them the centre of this work.

Vendor integrations

Of the platform's 19 vendor integrations, 12 were delivered as part of this work, and 4 others were enhanced.

The integrations use three different methods: REST APIs, web scraping and SFTP. That spans structured APIs, scraped sources and file-based transfer.

Platform vendor integrations · 19

  1. Delivered: V01
  2. Delivered: V02
  3. Delivered: V03
  4. Delivered: V04
  5. Delivered: V05
  6. Delivered: V06
  7. Delivered: V07
  8. Delivered: V08
  9. Delivered: V09
  10. Delivered: V10
  11. Delivered: V11
  12. Delivered: V12
  13. Other: V13
  14. Other: V14
  15. Other: V15
  16. Other: V16
  17. Other: V17
  18. Other: V18
  19. Other: V19
  • Delivered in this work · 12
  • Other integrations · 7
  • + 4 existing integrations enhanced

Integration methods

  • REST APIs

    request / response over HTTP

  • Web scraping

    data read from web pages

  • SFTP

    file-based transfer

Dwg SYS-02/A

Vendor integration register

Scale NTS

Status Conceptual

Nineteen vendor integrations feed the platform; twelve were delivered in this work, and four other existing integrations were enhanced. Cells are positional, not a mapping to specific vendors, which are not named.

Part-number lookups under load

Part-number lookups run through a concurrent queue-and-worker system engineered for the platform: lookup work is placed on a queue and processed by concurrent workers.

The change improved server efficiency by 70% and eliminated the freezes the platform had experienced under load.

Conceptual part-number lookup queue and workersLookup requests enter a queue, are processed by concurrent workers, and produce results.PART-NUMBERlookup requestsQUEUEW 1W 2W nCONCURRENT WORKERSRESULTSlookup responses

Dwg SYS-02/B

Part-number lookup · queue and workers

Scale NTS

Status Conceptual

Conceptual view of the queue-and-worker pattern used for part-number lookups: lookup work is queued and drained by workers running concurrently. Queue technology and worker count are not specified.