Back to Case studies
// Case Study

Transforming Property Tax Workflows Across 15 Texas Counties

All case studies
// client engagement
Written by NextGen Coding Company Engineering Team — senior U.S.-based software engineers and solution architects
Technically reviewed by NextGen Principal Architect (AWS Certified Solutions Architect, 15+ yrs building production systems in fintech, healthcare, and tax technology)
Published Last updated

Client Background

BA Property Tax is a Dallas-based firm serving real estate professionals, legal advisors, and tax consultants across Texas. Known for its expertise in navigating complex appraisal district systems, the firm supports clients by managing high-stakes property valuation, protest filing, and investment analysis. As the client base expanded, BA Property Tax needed a scalable digital solution to manage and normalize fragmented data from 15 county systems.

The Problem

Texas property tax workflows are complicated by a decentralized infrastructure. Each county’s Appraisal District operates a unique system with different interfaces, document formats, and search mechanisms. BA Property Tax teams spent hundreds of hours manually navigating county websites, extracting data, and verifying records. The process was slow, error-prone, and inefficient, limiting the firm’s ability to scale and creating operational bottlenecks during critical appraisal and protest periods. Existing automation tools lacked the adaptability to operate across bot-protected sites and diverse data formats.

Our Solution

NextGen Coding Company developed a purpose-built property tax automation platform tailored to BA Property Tax's precise operational needs. The solution spanned automation, intelligent data parsing, secure delivery, and robust infrastructure—resulting in a production-grade system capable of reliably scaling across Texas’s most complex appraisal districts.

Supported Counties

The platform automates data retrieval from 15 unique county systems, including Dallas, Tarrant, Bexar, Harris, Denton, and more. Each site required custom selectors, fallback logic, and format-specific handling for compatibility.

Automation Stack

  • Playwright (Python): Powers browser automation across JavaScript-heavy county sites.

  • Quart: Asynchronous backend API to manage jobs and streaming.

  • playwright_stealth: Browser stealth mode ensures access to bot-protected sites.

  • Tesseract OCR: Activated on-demand for image-based PDF parsing.

  • BytesIO Stream Processing: Enables in-memory handling of screenshots and PDFs.

  • asyncio + aiohttp: Support concurrent scraping jobs without blocking performance.

Automation Data Flow

The system begins with parcel list inputs. Using Playwright, the platform navigates CAD websites, extracts HTML and document data, and processes both through the Nanonets API, which returns structured JSON. A normalization module then unifies all output into a single schema. Final data delivery occurs via CSV, JSON, Google Sheets, dashboard, SFTP, or email.

Infrastructure Architecture

  • Amazon ECS / Fargate: Scalable microservices for compute.

  • Amazon API Gateway: Central entry point for backend communication.

  • Amazon S3 & CloudWatch: Storage and performance monitoring.

  • Admin UI: Web-based interface for administrators.

  • CI/CD Pipeline: Automated builds and deployment via Amazon ECR.

Results

  • Matched Data Extraction in 12 Counties: Full functionality confirmed during QA.

  • Upload & Process Success in All 15 Counties: Even in restricted environments.

  • Normalized JSON Schema: Eliminated manual cleanup and ensured instant usability.

  • Faster Processing: Screenshot streaming and real-time memory processing reduced latency.

  • Secure & Isolated Sessions: Maintained data integrity and avoided cross-county contamination.

The system now enables BA Property Tax to retrieve and process large-scale data with speed and confidence. It reduced manual workload, minimized errors, and improved turnaround times across county boundaries.

Call to Action

To streamline complex data retrieval systems or automate fragmented document workflows, Contact admin@nextgencodingcompany.com or book a call to speak with our solutions team to begin scoping

https://calendly.com/next_gen_coding_company/30min

Partner with a team experienced in deploying high-performance, fully customized automation across regulated sectors.

// case study faq

Frequently asked questions

What did NextGen actually build in this engagement?
NextGen designed and shipped a production system end to end: architecture, data model, application code, integrations, security review, and deployment. A senior U.S.-based team owned delivery from discovery through launch, and the client kept full ownership of the codebase and cloud accounts.
How long does an engagement like this take?
Most engagements of this shape run eight to sixteen weeks from kickoff to production. A discovery and architecture sprint takes two to three weeks, the first working release lands around week six, and the remaining time covers hardening, integrations, and rollout support.
What technologies were used?
This engagement was delivered with React, Next.js. A senior U.S.-based team owned the architecture and the implementation, and the client kept full ownership of the codebase and cloud accounts.
Can NextGen deliver a similar outcome for us?
Yes. We start with a paid discovery sprint that produces an architecture, a scope, and a fixed price or a staffed team plan. From there you can proceed with a fixed-scope build or a dedicated team. Book a call and we will scope your project against this case study.
// let's build something

Start your project request

Tell us what you're building — engineering capacity, AI, QA, cloud, or a fixed-scope software engagement. Our NYC team responds within one business day.

// what to expect
  • Response within 1 business day
  • 30-minute discovery conversation
  • Recommended engagement model & pricing
  • NYC-focused — in-person available
Start Project Request

Inbound sales only. All form information is encrypted in transit.