Senior Java Developer (Onsite Interview)

Overview

On Site
Up to $60
Full Time

Skills

Java
Web Services
Web Applications
JUnit
JavaScript
JavaScript Frameworks
Java Servlets
J2EE
Continuous Integration and Development
Communication
Bootstrap
AngularJS

Job Details

We are seeking an experienced and highly skilled Senior Java Developer with a proven track record in developing, deploying, and maintaining complex web applications. The ideal candidate will have a deep understanding of Java J2EE programming, web services, and system architecture. This role requires expertise in building scalable and robust solutions, managing multiple tasks in a fast-paced environment, and collaborating effectively with cross-functional teams. A self-motivated and proactive individual who thrives in a dynamic, collaborative setting will be a perfect fit for this role.

Key Responsibilities:

  • Web Services Development and Integration:

    • Develop and maintain both RESTful and SOAP web services for seamless integration across different platforms and systems.

    • Ensure secure and efficient communication between web services by implementing industry-standard security protocols (e.g., SSL/TLS, OAuth).

    • Integrate web services with third-party APIs and services, ensuring data flows smoothly and securely between systems.

  • Java J2EE Development:

    • Utilize Java J2EE technologies to build scalable and high-performance applications. This includes working with various Java-based frameworks such as Servlets, Spring (Core, MVC, Boot), and other enterprise-level tools.

    • Design and implement backend services, APIs, and system components that are both reliable and maintainable.

  • Concurrency and Performance Optimization:

    • Apply your experience in multithreading and concurrency management to ensure optimal performance in applications, particularly in large-scale or high-volume environments.

    • Troubleshoot and optimize the performance of Java applications to improve response times, minimize CPU/memory usage, and ensure overall system efficiency.

  • Database Design and Management:

    • Design and implement efficient relational database schemas and ensure seamless data access through complex SQL queries.

    • Work with database systems such as DB2, MS-SQL, or Oracle and ensure the consistency, integrity, and optimization of data models.

    • Collaborate with other teams to implement data storage solutions and manage large datasets effectively.

  • Application Performance Tuning:

    • Apply your expertise in profiling and tuning Java applications, focusing on memory management, thread optimization, and improving system responsiveness.

    • Use advanced debugging techniques to identify bottlenecks and address system performance issues proactively.

  • Front-End and UI Development:

    • Develop dynamic, interactive user interfaces with proficiency in JavaScript and UI libraries, ensuring a smooth, user-friendly experience.

    • Work with JavaScript frameworks such as React, Angular, or Vue.js to build modern, responsive applications.

    • Ensure the front-end is responsive across a wide range of devices and screen sizes by leveraging responsive design frameworks such as Bootstrap or Foundation.

  • Unit Testing and Test-Driven Development (TDD):

    • Implement robust unit testing strategies using frameworks such as JUnit and Mockito.

    • Promote and apply Test-Driven Development (TDD) principles to ensure that code is well-tested and of high quality.

  • Version Control and CI/CD:

    • Use version control systems like Git to manage code changes, collaborate with the team, and maintain clean, well-documented code.

    • Experience with continuous integration/continuous deployment (CI/CD) pipelines to streamline the development process and ensure timely releases.

  • Cloud and Distributed Systems:

    • Familiarity with cloud platforms such as AWS or Azure, and experience with cloud-native development and deployment strategies.

    • Exposure to microservices architecture and containerization (e.g., Docker, Kubernetes) is highly valued.

  • Agile Development:

    • Work effectively within Agile development teams, participating in sprint planning, daily stand-ups, and retrospectives.

    • Collaborate closely with product managers, designers, and other developers to ensure the timely and successful delivery of high-quality software.

  • Collaboration and Communication:

    • Collaborate with cross-functional teams to design, develop, and deploy solutions.

    • Communicate effectively with both technical and non-technical stakeholders, explaining complex technical concepts in a clear and concise manner.

Key Requirements:

  • Extensive Web Services Experience:

    • Demonstrated proficiency in building and maintaining both RESTful and SOAP web services.

    • Strong understanding of web service security and integration with third-party services and APIs.

  • Java J2EE Expertise:

    • Expertise in Java J2EE programming with solid experience in using frameworks like Servlet, Spring, and other enterprise technologies.

  • Multithreading and Concurrency Management:

    • Proven experience managing multithreading, concurrency, and performance optimization in a Java-based environment.

  • Database Skills:

    • Strong experience with relational databases (e.g., DB2, MS-SQL, Oracle) and advanced SQL query writing.

  • Performance Optimization:

    • Ability to optimize system performance, including effective memory management, CPU usage, and improving application response times.

  • UI Development with JavaScript:

    • Experience building dynamic user interfaces using JavaScript and modern frameworks such as React, Angular, or Vue.js.

  • Responsive Web Design:

    • Strong experience with responsive web design techniques, ensuring applications are optimized for various devices and screen sizes.

  • Problem-Solving Skills:

    • Strong analytical skills with the ability to troubleshoot complex problems and implement effective solutions.

  • Testing and TDD:

    • Proficient in writing unit tests and utilizing frameworks like JUnit, Mockito, and familiar with Test-Driven Development (TDD).

  • Version Control and CI/CD Experience:

    • Proficiency in using Git, Jira, and experience with CI/CD pipelines for streamlined development workflows.

  • Cloud Experience (Preferred):

    • Experience working with cloud platforms such as AWS or Azure, and familiarity with microservices architecture is a plus.

  • Agile Environment Experience:

    • Comfortable working in an Agile environment with hands-on experience in Agile processes and practices.

  • Communication Skills:

    • Excellent communication skills, with the ability to explain technical concepts to both technical and non-technical team members.

Preferred Skills (Not Required):

  • Security Frameworks: Knowledge of security protocols and frameworks like OAuth, JWT, etc.

  • Loan Process Knowledge: Familiarity with the loan processing domain is a plus.

  • Mainframe Knowledge: Experience with mainframe systems and integration with modern technologies is a bonus.

Ideal Candidate:

We are looking for a self-motivated individual who thrives in a collaborative and fast-paced environment. The ideal candidate will be someone who takes ownership of the development process from inception to deployment, enjoys solving complex problems, and continuously strives to improve their technical skills.

Employers have access to artificial intelligence language tools (“AI”) that help generate and enhance job descriptions and AI may have been used to create this description. The position description has been reviewed for accuracy and Dice believes it to correctly reflect the job opportunity.