Skip to content
Winmill

Winmill

  • Services
    • AI Solutions
      • Data & Intelligence
      • Microsoft Fabric & Foundry
      • AI on Your Data
      • Machine Learning Operations
    • Cloud Engineering
      • AKS to Azure Container Apps
    • Custom Software Development
      • Cloud, Desktop & Mobile Apps
      • Rapid Prototyping & MVP
      • DevOps & CI/CD Engineering
      • Technologies & Tools
    • Cybersecurity
      • Penetration Testing
      • Application Security
      • Cloud & Infrastructure Security
    • Data Center & IT Support
      • Managed IT Services
      • Disaster Recovery & Business Continuity
      • Microsoft License Review
      • IT Advisory & Procurement
  • About
    • Company
    • Leadership
    • Careers
    • Partners
  • Resources
    • Blog
    • Success Stories
  • Get in Touch
Success Story

State government automates Checkmarx scanning across 400 applications

A state IT department needed structured static application security testing across a portfolio maintained by agencies statewide. Winmill built the pipeline that made it automatic.

Industry: State GovernmentService: Application Security
  • Code scanning automated across 400 applications
  • Results posted where developers already work
  • Portfolio-wide source code visibility

At a glance

Client
A state government department
Situation
Hundreds of applications with no consistent code security assessment
Scope
Checkmarx scanning integrated into GitLab CI across the portfolio
Technology
Checkmarx, GitLab CI

The project

This state government IT department is responsible for over 400 applications, developed and maintained by agencies throughout the state and hosted in GitLab CI. The department wanted Checkmarx integrated into the development lifecycle to support consistent, structured static application security testing. The complication: every agency manages its projects differently, with no standardized methodology, so onboarding everyone at once was impossible.

Winmill worked with the department to build Checkmarx-GitLab, a Docker-based .NET Core application that automates a Checkmarx scan pipeline whenever developers commit code to designated projects. The application listens for changes through GitLab webhooks, kicks off the scan, and logs a summary back into GitLab when it completes.

The challenges

  • Gradual rollout without redeployment. Agencies had to be introduced into automated scanning one at a time, without redeploying the application for every addition.
  • Results where developers already work. Scan findings had to reach developers without new tools or onerous processes that would discourage adoption.
  • Speed under constant change. With most of the portfolio in active development, the pipeline had to respond immediately to incoming code changes, and it couldn’t stop responding even under heavy load.

The solution

Checkmarx-GitLab runs on rules defined in a configuration file, so the department introduces new applications into the scanning architecture in a controlled way with a simple file change rather than a code redeployment. The configuration also sets vulnerability count limits that automatically open a GitLab ticket when exceeded.

Scan summaries come back to developers as GitLab comments and tickets, in the environment they already use every day. And the application completes scan requests almost immediately by running scans in parallel, using Docker to spread work across multiple hosts and modern .NET Core task management to do it safely. When the department needs more capacity, it adds Checkmarx scanning engines; the application itself doesn’t change.

The results

  • Portfolio-wide visibility. The department now has clear source code assessments for all applications in its portfolio.
  • Feedback in the developer’s workflow. Developers see scan summaries posted back to GitLab and confirm their checked-in code is secure, while management reviews trends in Checkmarx or a preferred security portal through configurable REST endpoints.
  • Onboarding with a text editor. Adding an application to automated scanning takes a JSON configuration change, no recompile required.
  • A security history for every application. Because every commit is scanned, the department can see when a vulnerability was introduced, how quickly it was resolved, and how often it gets reintroduced across the portfolio.

How many of your applications get scanned today?

Tell us what you’re building and we’ll connect you with the engineers who integrate security into development pipelines every day.

Get in touch See more success stories
Winmill

Enterprise software, built and defended since 1994.

Services

  • AI Solutions
  • Cloud Engineering
  • Custom Software Development
  • Cybersecurity
  • Data Center & IT Support

Company

  • About
  • Success Stories
  • Blog
  • Careers

Connect

1501 Broadway STE 12060
New York, NY 10036-5601

Ready to discuss your project?

Start a Conversation

© 2026 Winmill Software. All Rights Reserved. Privacy Policy  |  Terms  |  Accessibility