The Microservices Lead Developer will be responsible for designing and implementing an architecture that structures applications as a set of loosely coupled, collaborating services. This role involves interacting with Internal IT Teams, Architects and external vendors to understand requirements, end to end business flow and implement system solutions.
Key Areas of Responsibility
- Leads development efforts to implement a backend Microservices framework to help digitize existing POS System
- Leads development of cloud native solutions using Java Spring Boot, Spring cloud and a mix of open source and PaaS technologies
- Performs hands-on coding and troubleshooting issues and implement fixes/enhancements
- Performs Test Driven Development with frequent code reviews to ensure code quality
- Remains updated on best practices (12 factor Apps etc.) and industry standard designs and patterns for Microservices
- Leads implementation of Data Management solutions by identifying the right data store (SQL, NoSQL)
- Implements caching strategy for performance
- Designs applications to be scalable and reliable with high availability
- Coordinates with DevOps/Infra teams to implement Monitoring and Alerting
- Ensures the system has end to end traceability to enable debugging and troubleshooting issues
- Works with Production Support to implement KPI dashboards to measure service performance
- Takes ownership of applications or modules within a larger application and drive enhancements and bug fixes as required
- Adheres to standards and ensures best practices are followed during all phases of SDLC
- Works on design documents and ensures comprehensive coverage of all modules within an application stack
- Prepares documentation where necessary, including training, process flows, system structure, etc.
Critical and Essential Tasks
- Collaborates with managers, directors, project managers and project sponsors to identify potential system improvements and determines project scope and vision
- Conducts interviews and product analysis to gather user requirements via workshops, questionnaires, surveys, site visits, workflow storyboards, use cases, scenarios and other methods
- Develops and utilizes standard templates to accurately and concisely write requirement specifications
- Translates conceptual user requirements into functional requirements in a clear manner that is comprehensible to developers/project team
- Develops prototypes of interfaces and attributes based on findings
- Analyzes and verifies requirements for completeness, consistency, comprehensibility, feasibility and conformity to standards
- Creates process models, specifications, diagrams and charts to provide direction to developers and/or project teams
- Develops and conducts peer reviews to ensure that requirement specifications are correctly interpreted
- Communicates changes, enhancements and modifications - verbally or through written documentation to directors, project managers, sponsors and other stakeholders
- Researches, reviews and analyzes the effectiveness and efficiency of existing requirements-gathering processes and develops strategies for enhancing or further leveraging these processes
- Recommends practices and procedures that work towards the continuous improvement of the requirements process
- Charts existing business processes in order to define current business activities for the development of procedures and models
- Meets with decision makers, system owners and end users to define business, financial and operational requirements and system goals
- Prototypes new procedures for the purpose of enhancing business processes, operations and information process flow
- Provides guidance and/or instruction to junior staff members
5-7 years of development experience preferably with Java and other open source technologies; Extensive experience with SQL writing complex queries for development/analysis and performance tuning of queries; Prior experience developing web services; Prior experience developing applications using any of messaging products (TIBCO EMS, Kafka etc.); Experience building integration applications using TIBCO suite of products will be preferred Education
Bachelor's degree or equivalent from a four-year college or university in accounting, business administration, computer science, finance, or information systems
Technical & Professional Skills Job-Specific Knowledge, Skills, and Abilities
- Extensive experience developing applications using Java and Java Spring Boot
- Strong SQL development experience
- Familiarity with Best Practices, Designs and Patterns of Microservices
- Experience with developing web services (REST/Soap) and familiarity with JSON
- Prior experience building applications using MEAN stack
- Knowledgeable about different architectural approaches for building integration applications (Microservices, SOA, Messaging)
- Knowledgeable about DevOps and coordinating with DevOps teams to setup CI/CD pipelines
- Prior experience in utilizing Service Mesh (Istio), API Management tools (Apigee) and Messaging tools (Kafka) in building Microservices solution
- Proven experience with business and technical requirements analysis, business and process modeling, system development methodology
- Experience overseeing the design, development and implementation of software and hardware solutions, systems, or products
- Strong analytical skills, ability to reconcile initiatives with business strategies and goals, competence with common financial analysis techniques
- Demonstrated ability to create requirements specifications in both technical and user-friendly language
- Proven ability to exercise independent judgment and take action
- Demonstrated analytical, mathematical and creative problem-solving skills
- Highly self-motivated and directed
- Strong customer service orientation
- Proven ability to effectively prioritize and execute tasks while under pressure
- Demonstrated strong verbal and written communication, listening and interpersonal skills; attention to detail and accuracy in work; and time management and organizational skills
- Demonstrated strong verbal and written communication and interpersonal skills; attention to detail and accuracy; and time management and organizational skills
- Highly proficient in the use of MS Word, MS Excel, PowerPoint and Outlook
This is a major area of importance. Customer Service is one of the primary responsibilities of this position. People who are successful in this position will be eager to help, committed to doing things right and always focused on the customer's wants and needs.
Leadership skills are of moderate importance. Successful incumbents will possess excellent communication skills and have the ability to interpret technical information to all levels of associates in a positive and motivational manner and so that they can understand. An emphasis on inter-personal relationships and 'results orientation' will ensure success in this position.
The person in this position will need to have keen analytical skills that will allow him/her to look at data and identify discrepancies and irregularities and determine the best solution to correcting the situation.
In order to be effective in this position, the incumbent must be able to manage multiple priorities and deadlines to better handle day-to-day and special situations.
Physical Demands and Work Conditions
The physical demands described here are representative of those that must be met by an associate to successfully perform the essential functions of this job. Reasonable accommodations may be made to enable individuals with disabilities to perform the essential function. While performing the duties of this job, the associate is required to stand; use hands to finger, handle, or feel objects, tools, or controls; reach with hands and arms; and talk or hear; stoop, kneel, crouch or crawl; and climb or balance. The associate must occasionally lift and/or move heavy equipment. Specific vision abilities required by this job include close vision, color vision, peripheral vision, depth perception and the ability to adjust focus.
The work environment characteristics described here are representative of those an employee encounters while performing the essential functions of this job. Reasonable accommodations may be made to enable individuals with disabilities to perform the essential functions. The work environment includes working with moving mechanical parts. The noise level in the work environment is usually moderate to loud as in and around computer room equipment.
EZCORP is an Equal Opportunity Employer.
EZCORP participates in the E-Verify Program (Department of Homeland Security) which electronically verifies the employment eligibility, identity, and Social Security number validity of all new hires and rehires.