Senior Full-Stack Java Developer in Detroit, MI at Vaco

Date Posted: 5/10/2022

Job Snapshot

Job Description

Job Description:

Seeking an experienced Senior Full-Stack Java Developer to join a growing IT team within Auto & Insurance Product Delivery. Reporting to the Technical Lead, this is a key role providing technical guidance and leadership within an Agile development squad.

The Senior Developer will provide substantial contributions in the design, coding, testing, support and debugging of new software and enhancements to existing software, using their technical knowledge, creativity and experience to deliver solutions to complex problems. They will be a technical expert for the team and a mentor for more junior team members.

Experience with design, integration, and architectural patterns is strongly preferred - especially as they pertain to complex, enterprise-scale, transactional systems.

The Senior Developer is expected to foster collaboration in a team-centric environment; rely on experience and judgement to accomplish goals; coach team members using probing questions rather than authority; drive quality through continual improvement; exhibit strong communication and interpersonal skills; work well under pressure and aggressive timelines; and think beyond the day-to-day activities to ensure big-picture objectives are achieved.

Job Responsibilities

  • Design, code, debug, document, and support computer applications and tools consistent with established specifications and business requirements
  • Write clean, reusable, scalable and secure code for deployment adhering to best practices
  • Develop and ensure compliance with architecture principles and standards for the various systems and components based on design patterns
  • Contributing to the successful completion of deliverables on time and within budget
  • Performing root cause analysis and helping troubleshoot technical issues
  • Instills strong focus and best practices for creation and maintenance of high-quality deliverables
  • Drives continuous improvement through coaching, pair programming, code review processes, and team discussions
  • Works closely with Development Lead, Architects, Project Managers, Systems Analysts, and other members of the wider team to plan and develop the integration components
  • Breakdown and estimate technical tasks and recommend implementation approach for team; ensure stories contain the right balance of technical direction, best practices, and level of detail
  • Identifying and unblocking technical risks
  • Interacting and communicating with technical and non-technical audiences
  • Advise team members on company standards, security requirements, methodologies, and processes
  • Create and review technical documentation and specifications, as necessary
  • Author and support the content for Context Diagrams, Application Models, Application Profiles, Integration use cases, Logical Application Models, Process Models, Logical Data Models, High Level Designs, Solution Design Documents

Desired Experience & Skills

Technical

  • Knowledge of all phases of software development including design, coding, testing, debugging, implementation, and support.
  • Experienced full-stack developer with "hands on" enterprise software development experience on multi-tiered systems including - Java, Spring Boot, REST Web Services/Swagger/Postman, data exchange (JSON, XML), JPA, Oracle, Angular, CSS/HTML5, Responsive Design.
  • Experience working with enterprise development environments and tools including - Git/BitBucket, Jenkins, JUnit, Selenium, JIRA/Confluence, SonarQube, Checkmarx, NexusIQ.
  • Knowledge of standard change management tools and processes, code branching/merging/commit strategies, feature branches, and trunk-based development.
  • Strong hands-on experience writing clean, quality, and testable applications that support rapid delivery via Continuous Integration, Delivery, and automated deployments.
  • Experience working in teams with Agile approaches such as Scrum, XP, Kanban, SAFe, etc.
  • Experience using - and coaching team members in the use of - Agile development practices such as test-driven development (TDD), paired programming, automated testing, sprint planning, story card grooming, estimating, and tracking sprint goals.
  • Some experience working in cloud-based environments (AWS VPC, EC2, GIT) would be an advantage
  • Plus: Big 4 consulting or startup experience a plus
  • Hands on experience with the following platforms strongly preferred - OpenShift/Docker/Kubernetes, Helm, Kafka, Elasticsearch, Apigee.
  • Experience writing and reviewing software design specifications in an object-oriented development environment, use of OO design patterns, open source security frameworks & best practices.
  • Experience designing, developing, and implementing complex micro-services applications
  • Experience with CI/CD and DevOps best-practices strongly preferred.

Interpersonal

  • Ability to work well and collaborate in a team environment
  • Ability to be a technical authority and influence other team members
  • Possesses strong analytical, problem-solving skills
  • Ability to thoroughly understand the business issues surrounding each project
  • Can articulate business requirements and objectives and translate those into software solutions
  • Can communicate effectively with senior leadership and other development teams, by summarizing complex technical content and articulating options with clear recommendations.
  • Self-motivated, self-starter with clear communication skills who thrives working in a team environment
  • Grasps new technologies and can adapt to rapid shifts in priorities
  • Ability to respond directly to questions from business clients

Qualifications

  • Bachelor\'s degree in Computer Science, Software Engineering, or other related discipline preferred
  • 8+ years of software development experience with at least 3+ years in a technical leadership role
  • A combination of 2 or 3 specific roles and durations