JOBSEARCHER

Java Swing Developer

Java Swing DeveloperWe are seeking an experienced Java Swing Developer to design, develop, enhance, and maintain desktop applications using Java and the Swing GUI framework. The ideal candidate will have strong Core Java programming skills, hands-on experience with Java Swing, object-oriented programming, multithreading, JDBC, and relational databases.The Java Swing Developer will work closely with software engineers, business analysts, QA teams, and product stakeholders to build reliable, scalable, and user-friendly desktop applications. The successful candidate should have strong debugging and problem-solving skills and experience maintaining both new and existing Java applications.Key ResponsibilitiesDesign, develop, test, and maintain Java-based desktop applications using Java Swing.Develop interactive and user-friendly graphical user interfaces using Swing components.Work with Swing components such as JFrame, JPanel, JTable, JTree, JDialog, JButton, JMenu, and other UI controls.Develop reusable custom Swing components based on application requirements.Implement event-driven functionality using Java event handling and listener mechanisms.Apply appropriate layout managers to create responsive and maintainable desktop interfaces.Develop application functionality using Core Java and object-oriented programming principles.Implement multithreading and concurrency to maintain application responsiveness and performance.Integrate desktop applications with relational databases using JDBC.Write and optimize SQL queries for application data retrieval and persistence.Integrate Java desktop applications with RESTful APIs and external services when required.Debug and troubleshoot application defects, UI issues, memory problems, and performance bottlenecks.Maintain and enhance existing Java Swing applications and legacy desktop systems.Refactor existing code to improve performance, maintainability, and code quality.Write clean, reusable, efficient, and well-documented Java code.Perform unit testing and support functional and integration testing activities.Collaborate with QA engineers to reproduce, analyze, and resolve software defects.Participate in code reviews and follow established software development standards.Use Git or similar version-control systems for source-code management.Support application builds and deployments using Maven or Gradle.Create and maintain technical documentation for application components and development processes.Collaborate with cross-functional teams throughout the software development lifecycle.Required QualificationsBachelor's degree in Computer Science, Information Technology, Software Engineering, or a related field.Minimum 3 years of professional Java application development experience.Strong hands-on experience with Core Java.Strong experience developing desktop applications using Java Swing.Solid understanding of object-oriented programming concepts and design principles.Experience with Swing GUI components and event-driven programming.Strong knowledge of Java Collections Framework.Experience with Java multithreading and concurrency.Hands-on experience with JDBC.Experience working with relational databases such as Oracle, MySQL, PostgreSQL, or SQL Server.Strong SQL knowledge and experience writing database queries.Experience with exception handling, logging, and application debugging.Familiarity with Maven or Gradle build tools.Experience using Git or another version-control system.Strong debugging, analytical, and problem-solving abilities.Preferred QualificationsExperience maintaining enterprise or legacy Java Swing applications.Knowledge of JavaFX.Experience with RESTful API and web-service integration.Knowledge of design patterns such as MVC, Singleton, Factory, Observer, and DAO.Experience with Hibernate or other ORM technologies.Familiarity with Spring or Spring Boot.Experience with JUnit and automated unit testing.Knowledge of CI/CD tools such as Jenkins.Experience with performance profiling and memory optimization.Understanding of client-server application architecture.Familiarity with Agile/Scrum software development methodologies.Technical SkillsJavaCore JavaJava SwingSwing GUIAWTObject-Oriented Programming (OOP)Java CollectionsMultithreadingConcurrencyEvent HandlingJDBCSQLOracle / MySQL / PostgreSQL / SQL ServerRESTful APIsJSONMVC ArchitectureDesign PatternsMavenGradleGitJUnitJavaFXSpring / Spring BootJenkinsCI/CDKey CompetenciesStrong Java programming skillsDesktop application developmentGUI design and developmentEvent-driven programmingDatabase integrationApplication troubleshootingPerformance optimizationLegacy application maintenanceCode refactoringSoftware testing and debuggingTechnical documentationCross-functional collaborationSoft SkillsStrong analytical and problem-solving skillsExcellent attention to detailGood verbal and written communication skillsAbility to work independently as well as within a development teamAbility to understand complex business and technical requirementsStrong commitment to software quality and maintainabilityAbility to troubleshoot complex application issuesAbility to manage multiple development prioritiesEqual Opportunity EmployerWe are an equal opportunity employer committed to creating a diverse and inclusive workplace. Employment decisions are made without regard to race, color, religion, sex, national origin, age, disability, veteran status, or any other characteristic protected by applicable law.