Java Developer

DMSi Software

Phoenix, AZ • On-site

$52.25 - $67.50/hr

Full-time

This job posting has expired and is no longer accepting applications. Check out similar jobs


Job description

We're seeking an experienced Java Developer to design, develop, and maintain our common framework and shared components that power multiple ERP applications. This role is critical to ensuring consistency, performance, and scalability across our entire ERP ecosystem while reducing development time and technical debt.

RESPONSIBILITIES AND DUTIES:

  1. Design and develop reusable components, libraries, and frameworks used across multiple ERP applications
  2. Apply architectural patterns and best practices for multi-tenant SaaS applications
  3. Optimize framework performance, ensuring optimal response times at scale
  4. Implement security protocols and compliance standards (OWASP, SOC 2, NIST)
  5. Drive adoption of AI-powered development tools to increase team productivity
  6. Conduct peer code reviews and participate in framework architecture discussions and design.
  7. Collaborate with product teams to understand requirements and provide technical guidance.

KNOWLEDGE, SKILLS, AND ABILITIES:

5+ years of Java development experience, with 2+ years in framework/platform development.
Strong understanding of software architecture patterns (microservices, event-driven, domain-driven design).
Experience building multi-tenant SaaS applications with focus on:

  • Performance optimization and caching strategies
  • Horizontal scalability and distributed systems
  • Security best practices (OAuth, JWT, encryption, OWASP)
  • High availability and fault tolerance

Proven track record using AI tools to accelerate development (GitHub Copilot, ChatGPT/Claude, etc.).
Experience with:

  • Spring Framework (Boot, Security, Data, Cloud)
  • RESTful API design
  • Message queuing systems (Kafka, RabbitMQ)
  • CI/CD pipelines and DevOps practices
  • Some experience with GWT will be an advantage

      EDUCATION AND EXPERIENCE:
      Bachelor's Degree in Computer Science, Software Engineering, or equivalent professional experience.
      3-7 years of hands-on Java development experience, with at least 2 years working on shared frameworks or platform components.
      Proven background in maintaining and enhancing large-scale enterprise applications in a SaaS environment.
      Experience working in agile teams with exposure to multiple stakeholder groups and cross-functional collaboration.
      Track record of successfully delivering complex technical projects while balancing technical debt reduction and feature development.

      WORK ENVIRONMENT AND PHYSICAL DEMANDS:
      Normal office environment with use of computers and telephone systems; no unusual physical demands.
      Travel as needed, including business air travel and car rental.



      Frequently asked questions

      Q: What skills or qualities help someone succeed as a Java Developer?

      A: To succeed as a Java Developer, key technical skills include proficiency in Java programming language, object-oriented design principles, and experience with popular frameworks such as Spring or Hibernate. Additionally, soft skills like strong problem-solving abilities, effective communication, and collaboration with cross-functional teams are crucial for delivering high-quality software solutions. By combining these technical and soft skills, Java Developers can effectively design, develop, and maintain complex software systems, driving career growth and success in the role.

      Q: What is the career path for a Java Developer?

      A: A Java Developer's typical career progression involves starting as a Junior Java Developer, where they focus on writing clean, efficient code and learning industry-standard development practices. As they gain experience, they can move into mid-level roles such as Senior Java Developer or Technical Lead, where they take on more complex projects, mentor junior developers, and contribute to architectural decisions. Ultimately, senior Java Developers can transition into leadership positions like Technical Architect or Engineering Manager, or pursue specialized roles like DevOps Engineer or Cloud Computing Specialist, leveraging their expertise to drive innovation and growth in the field.