← Back to jobs

Senior Desktop Application Developer

Location
REMOTE
Work type
Full Time · On-site
Posted
2026-10-01

Job description

The client seeks a Senior Desktop Application Developer with extensive Java development experience, strong technical capabilities, and demonstrated business acumen to support a mature enterprise application. The client is in Washington, DC; work will be performed remotely.

The application is a complex, data-driven Java desktop application installed and executed locally on user workstations. It processes and displays data from databases, local files, hardware devices, and remote systems, dynamically adjusting workflows, processing logic, and user-interface behavior based on data and configuration.

Because this is primarily a desktop application, candidates must have substantial Java Swing desktop development experience in addition to Java/J2EE skills. Candidates whose experience is primarily browser-based web development may not have the background required for this role.

Key Responsibilities:

Design, develop, maintain, troubleshoot, and enhance a complex Java desktop application.

Develop and maintain Java Swing functionality, dynamic user interfaces, data-driven workflows, processing logic, and business rules.

Translate business requirements, user stories, acceptance criteria, flowcharts, and process diagrams into detailed technical designs and application functionality.

Develop and maintain integrations with Oracle, HSQLDB, Excel/local files, remote systems, and USB-connected hardware such as barcode scanners and scales.

Troubleshoot application, database, data-processing, hardware-interface, and integration issues across development, testing, and production environments.

Participate throughout the full software development life cycle, including requirements, design, development, testing, deployment, production support, code reviews, defect resolution, and releases.

Develop technical documentation and collaborate with business stakeholders, product owners, testers, developers, and other technical teams.

Adhere to client development, security, configuration-management, and documentation standards.

Required Skills and Experience:

8+ years of advanced Java/J2EE programming experience.

4+ years of advanced Java Swing experience developing and maintaining desktop applications.

4+ years of PL/SQL programming experience.

2+ years of experience with technologies such as Spring, Xerces, Com4j, and Apache Commons.

Strong experience supporting mature, locally installed, data-driven applications containing substantial existing business logic.

Strong knowledge of RDBMS concepts, relational database design, SQL, Oracle, database connectivity, and local/embedded databases such as HSQLDB.

Experience processing structured data files, including Microsoft Excel.

Experience developing complex workflows, branching logic, decision trees, dynamic user interfaces, and data/configuration-driven business rules.

Strong knowledge of secure Java coding practices and vulnerability mitigation.

Experience with WiX, GitHub, source control, configuration management, and change management.

Experience with full software development life-cycle activities and Agile.

Experience developing technical designs from requirements, user stories, and acceptance criteria.

Strong debugging, troubleshooting, and root-cause analysis skills.

Preferred Skills:

Experience with NetBeans IDE, Maven, SonarLint/Sonar, and Jenkins.

Experience integrating Java desktop applications with USB-connected hardware, including barcode scanners and scales.

Experience supporting statistical sampling, quantitative data collection, or data-analysis applications.

Experience supporting systems with large numbers of configurable workflows, processing paths, and complex decision logic.

Experience analyzing mature codebases and dependencies among application logic, data, configuration, interfaces, and UI components.

Strong technical documentation and business/technical communication skills.

Ability to work independently while collaborating effectively within an Agile team.

Bachelor s degree in Computer Science, Information Technology, Engineering, or a related discipline, or equivalent professional experience.

Key Competencies:

The ideal candidate will demonstrate strong business acumen and the ability to translate complex business processes into maintainable technical solutions. The candidate must be comfortable navigating a mature codebase, understanding complex workflows and decision logic, independently investigating unfamiliar functionality, and balancing new development with maintenance, troubleshooting, defect resolution, and production support.

Strong analytical, problem-solving, written communication, and collaboration skills are essential.

Original source