Java Developer


Location: Farmington, MI

Department: Development

Type: Full Time

Min. Experience: 3+ Years



Logic Solutions is a full-service development firm headquartered in Ann Arbor, MI with 4 additional offices around the world. Founded in 1995, Logic offers website design and programming, eCommerce solutions, customized web and mobile applications, and application integration services that span the software development lifecycle.

Logic is seeking an experienced Java Developer to be based in Farmington, MI to manage application development while providing expertise in the full software development lifecycle, from concept and design to testing. The Java Developer will design, develop, and deliver high-volume, low-latency applications for mission-critical systems. Candidates should be a team player who constantly delivers great technical solutions for clients in a fast-paced, agile environment.

Responsibilities:
The ideal candidate must be able to perform the following essential job functions:

  • Analyze and evaluate a computer systems’ capabilities to understand strengths and weaknesses for the identification of opportunities for system improvement.
  • Identify and communicate business needs and translate business requirements into technical system and functional specifications. Participate in the estimation of costs for the planning of new systems/enhancements for assigned systems.
  • Identify, investigate, resolve and escalate problems as needed. Gather data to support recommendations to address problems. Procure technical assistance to help in problem resolution.
  • Research and analyze technology trends to determine the impact on the achievement of business goals, and recommend technologies to improve system performance.
  • Analyze, design, and coordinate implementation and deployment of simple-to-moderate complex systems and environments.
  • Integrate, design, and coordinate platforms for projects.
  • Install software and configure system environments for DEV, QA, Staging, and Production.
  • Provide data input and perform system load and performance testing, analyze data flow to find system bottleneck and suggest improvement of system’s performance and efficiency.
  • Research and recommend software tools to management.
  • Integrate and maintain Release Management Tool and Build Management Tool for CI/CD, Create and manage application release schedules.
  • Write documents and instruction manuals for applications and provide training for end users.
  • Perform other duties and responsibilities as required or assigned.

Required Skills/Competencies:

  • Strong background in Java.
  • Strong background with SQL Server and experienced in database design and writing complex queries.
  • Experienced in writing Webservices using standard Java frameworks.
  • Experienced in client-side JavaScript frameworks and AngularJS.
  • Experienced in user interface development including HTML, CSS, JSON
  • Experienced in Asynchronous programming.
  • Experienced in writing unit test cases for both client and server using Junit and/or Selenium.
  • Experienced in any of the Git code repository GitHub/GitLab/BitBucket.
  • Experienced in Maven/Gradle build management tools and writing automated build scripts.
  • Experienced in Jenkins Release Management tool and write scripts that can integrate with Git Repository, build management tools and servers.
  • Knowledge on SDLC process.
  • Knowledge on any Cloud Infrastructure as a service platform.
  • Knowledge on Security scanning.
  • Knowledge on Continuous Integration and Continuous deployment process.
  • Knowledge on JIRA for task execution.
  • Solid understanding of Object-oriented design concepts.

Logic offers equal opportunities to people. We would like to thank all applicants for expressing interest. However, only those selected for interviews will be contacted. Reference checks may be conducted with your permission.

Apply for this position


  • Accepted file types: pdf, doc, docx, Max. file size: 10 MB.
  • This field is for validation purposes and should be left unchanged.