<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0">
  <channel>
    <title>InfoQ - Development - Articles</title>
    <link>https://www.infoq.com</link>
    <description>InfoQ Development Articles feed</description>
    <item>
      <title>Article: Redesigning Banking PDF Table Extraction: A Layered Approach with Java</title>
      <link>https://www.infoq.com/articles/redesign-pdf-table-extraction/?utm_campaign=infoq_content&amp;utm_source=infoq&amp;utm_medium=feed&amp;utm_term=Development-articles</link>
      <description>&lt;img src="https://res.infoq.com/articles/redesign-pdf-table-extraction/en/headerimage/redesign-pdf-table-extraction-header-1776414059821.jpg"/&gt;&lt;p&gt;PDF table extraction often looks easy until it fails in production. Real bank statements can be messy, with scanned pages, shifting layouts, merged cells, and wrapped rows that break standard Java parsers. This article shares how we redesigned the approach using stream parsing, lattice/OCR, validation, scoring, and selective ML to make extraction more reliable in real banking systems.&lt;/p&gt; &lt;i&gt;By Mehuli Mukherjee&lt;/i&gt;</description>
      <category>Java</category>
      <category>Architecture &amp; Design</category>
      <category>Development</category>
      <category>article</category>
      <pubDate>Tue, 21 Apr 2026 09:00:00 GMT</pubDate>
      <guid>https://www.infoq.com/articles/redesign-pdf-table-extraction/?utm_campaign=infoq_content&amp;utm_source=infoq&amp;utm_medium=feed&amp;utm_term=Development-articles</guid>
      <dc:creator>Mehuli Mukherjee</dc:creator>
      <dc:date>2026-04-21T09:00:00Z</dc:date>
      <dc:identifier>/articles/redesign-pdf-table-extraction/en</dc:identifier>
    </item>
    <item>
      <title>Article: Building Production-Ready tRPC APIs: The TypeScript Alternative to Apollo Federation</title>
      <link>https://www.infoq.com/articles/building-trpc-api-typescript/?utm_campaign=infoq_content&amp;utm_source=infoq&amp;utm_medium=feed&amp;utm_term=Development-articles</link>
      <description>&lt;img src="https://res.infoq.com/articles/building-trpc-api-typescript/en/headerimage/building-trpc-api-typescript-header-1776246612091.jpg"/&gt;&lt;p&gt;This article details our migration from Apollo Federation to a TypeScript-based tRPC stack, which resulted in an 89% reduction in bugs and 67% faster response times. It also covers the mistakes we made, the unexpected performance gains, and an overview of the production architecture we use today to handle 2.4 million daily requests with 99.97% uptime.&lt;/p&gt; &lt;i&gt;By Dinesh Kumar Elumalai&lt;/i&gt;</description>
      <category>RPC</category>
      <category>API</category>
      <category>GraphQL</category>
      <category>Web Development</category>
      <category>tRPC</category>
      <category>TypeScript</category>
      <category>Development</category>
      <category>article</category>
      <pubDate>Mon, 20 Apr 2026 11:00:00 GMT</pubDate>
      <guid>https://www.infoq.com/articles/building-trpc-api-typescript/?utm_campaign=infoq_content&amp;utm_source=infoq&amp;utm_medium=feed&amp;utm_term=Development-articles</guid>
      <dc:creator>Dinesh Kumar Elumalai</dc:creator>
      <dc:date>2026-04-20T11:00:00Z</dc:date>
      <dc:identifier>/articles/building-trpc-api-typescript/en</dc:identifier>
    </item>
    <item>
      <title>Article: Using AWS Lambda Extensions to Run Post-Response Telemetry Flush</title>
      <link>https://www.infoq.com/articles/lambda-extension-deferred-flush/?utm_campaign=infoq_content&amp;utm_source=infoq&amp;utm_medium=feed&amp;utm_term=Development-articles</link>
      <description>&lt;img src="https://res.infoq.com/articles/lambda-extension-deferred-flush/en/headerimage/lambda-extension-deferred-flush-header-1775648097720.jpg"/&gt;&lt;p&gt;At Lead Bank, synchronous telemetry flushing caused intermittent exporter stalls to become user-facing 504 gateway timeouts. By leveraging AWS Lambda's Extensions API and goroutine chaining in Go, flush work is moved off the response path, returning responses immediately while preserving full observability without telemetry loss.&lt;/p&gt; &lt;i&gt;By Melvin Philips&lt;/i&gt;</description>
      <category>AWS Lambda</category>
      <category>Cloud</category>
      <category>Serverless</category>
      <category>AWS</category>
      <category>API</category>
      <category>HTTP</category>
      <category>API Gateway</category>
      <category>DevOps</category>
      <category>Development</category>
      <category>article</category>
      <pubDate>Wed, 15 Apr 2026 09:00:00 GMT</pubDate>
      <guid>https://www.infoq.com/articles/lambda-extension-deferred-flush/?utm_campaign=infoq_content&amp;utm_source=infoq&amp;utm_medium=feed&amp;utm_term=Development-articles</guid>
      <dc:creator>Melvin Philips</dc:creator>
      <dc:date>2026-04-15T09:00:00Z</dc:date>
      <dc:identifier>/articles/lambda-extension-deferred-flush/en</dc:identifier>
    </item>
    <item>
      <title>Article: The Spring Team on Spring Framework 7 and Spring Boot 4</title>
      <link>https://www.infoq.com/articles/spring-team-spring-7-boot-4/?utm_campaign=infoq_content&amp;utm_source=infoq&amp;utm_medium=feed&amp;utm_term=Development-articles</link>
      <description>&lt;img src="https://res.infoq.com/articles/spring-team-spring-7-boot-4/en/headerimage/spring-team-spring-7-boot-4-header-1775634533622.jpg"/&gt;&lt;p&gt;InfoQ recently spoke with key members of the Spring team about the significant architectural and functional advancements in Spring Framework 7 and Spring Boot 4. This conversation explores the strategic shift toward core resilience by integrating features such as retry and concurrency throttling directly into the framework, alongside the performance benefits of modularizing auto-configurations.&lt;/p&gt; &lt;i&gt;By Karsten Silz, Phil Webb, Sam Brannen, Rossen Stoyanchev, Mark Pollack, Martin Lippert, Michael Minella&lt;/i&gt;</description>
      <category>Spring Framework</category>
      <category>Virtual Panel</category>
      <category>AI Coding</category>
      <category>Java</category>
      <category>Spring Boot</category>
      <category>Development</category>
      <category>article</category>
      <pubDate>Mon, 13 Apr 2026 11:00:00 GMT</pubDate>
      <guid>https://www.infoq.com/articles/spring-team-spring-7-boot-4/?utm_campaign=infoq_content&amp;utm_source=infoq&amp;utm_medium=feed&amp;utm_term=Development-articles</guid>
      <dc:creator>Karsten Silz, Phil Webb, Sam Brannen, Rossen Stoyanchev, Mark Pollack, Martin Lippert, Michael Minella</dc:creator>
      <dc:date>2026-04-13T11:00:00Z</dc:date>
      <dc:identifier>/articles/spring-team-spring-7-boot-4/en</dc:identifier>
    </item>
  </channel>
</rss>
