Role: Java Full Stack Developer
Experience : 7 to 12 years
Location: Pune / Hyderabad / Bengaluru / Chennai / Kolkata
Primary Skill :
Java
Microservices
Spring Boot
Frontend - Angular/React
RestAPI’s
Middleware – Kafka / Rabbit MQ
Database – PostgreSQL / SQL Server
Design Patterns
AWS
Good To have Containerization using Docker and Kubernetes
Education: Bachelors or Master’s degree in computer science or GED equivalent.
Previous Experience: 7+ years’ experience working in the Information Technology field.
Job Summary:
To further our growth and support our clients, we are looking for people to come join us and help solve complex engineering problems. We are rebuilding the engineering group to pivot from current architecture to a service centric organization in the cloud. To go where we want to go, we are looking for solid, tech savvy Software Engineer who can execute and take us to the next level. The solution we are looking to build will define the next generation reverse logistics and trade in platform.
We use Java and Open-Source platform. Microservices is built with Spring Boot, Kafka, RabbitMQ, Elastic are some of the heavily used frameworks within our ecosystem. For the frontend, we use Angular JS. Our infrastructure is managed in AWS, and we are in the process of moving towards Kubernetes managed using Docker containers with Istio service mesh to run our distributed microservice clusters on AWS. We use Git and Code Pipeline for all our development and deployment needs.
Job Responsibilities:
25%)
- Gather requirement data from various stakeholders and constituencies.
- Review, evaluate, organize, and document detailed requirements of the various stakeholders.
- Prepare technical design options; consult with hardware and software technicians on options and strategies.
- Develop, document and present design solutions and alternatives.
- Prepare estimates of cost, effort and duration for development tasks and activities
- Participate in technical evaluations of vendor packages.
- Prepare and contribute toward the preparation of project and product vision documentation.
25%)
- Serve as the champion of development best practices including application of design patterns, functional programming ideas, reactive programming ideas, code quality, test coverage etc.
- Identify and validate software and infrastructure components required to implement technical solutions.
- Identify and validate solution objects, functions, interfaces, dependencies, and integration points.
- Prepare design documentation and participate in design reviews.
- Translate designs into specifications for required infrastructure and application software components.
- Code and unit test solutions independently or as part of a development team.
- Submit software products for review of compliance with best practices, standards, and enterprise architecture (code review)
20%)
- Review established quality requirements and measurement metrics.
- Perform quality assurance and testing activities according to planned schedules.
- Apply selected testing tools and techniques.
- Perform and/or direct technical support activities required for execution of test plans.
- Perform and/or direct defect correction that maintains or enhances application integrity.
- Evaluate outcomes, report results and document findings according to current standards.
10%)
- Adhere to Client change management requirements for application and system implementations.
- Analyze conditions and identify strategies that minimize implementation risk and/or improve system reliability and performance.
- Prepare and approve change and Help Desk documentation according to implementation requirements.
- Provide for disaster recovery and back-out mechanisms.
- Perform or direct software implementation activities according to current standards and policies.
- Monitor implementations and respond or direct appropriate response in the event of disruptive impacts.
10%)
- Maintain knowledge of services, system environments, utilities, and procedures
- Participate in on-call rotations.
- Provide timely, concise communication of incident status to appropriate personnel.
- Document incident occurrence and resolution(s) applied using designated repositories.
- Evaluate conditions and suggest possible strategies to minimize risk(s) of incident recurrence.
- Consult with and direct other staff personnel as required for effective incident resolution.
- Resolve development and support issues of high complexity or risk.
10%)
- Periodically review business goals and operational and strategic objectives
- Apply knowledge of the key components and relationships of Client products, distribution channels, and customer base
- Foster and sustain open communication with business application users and stakeholders.
- Adhere to the Client Core Principles; pursue achievement of excellence in Core Competencies
- Know the critical success factors supporting the Client Core Purpose, Mission, Goals and Strategy
Basic Qualification:
Education:
- Bachelor’s or Master’s degree in computer science or GED equivalent.
Previous Experience
- 8+ years’ experience working in the Information Technology field.
Knowledge and Skills
- 6+ years’ experience in client/server and n-tier development principles including understanding of Object-Oriented modeling, analysis, design, and programming.
- 5+ years’ experience with Java development experience including Spring Boot, Spring Framework, JPA/Hibernate, Rabbit MQ, Redis, Elastic, Kafka, PostgreSQL, and SQL Server
- 4+ years’ experience with UI/UX technologies including AngularJS / ReactJS.
- 4+ years’ experience with the full software design life cycle.
- 5+ years’ experience documentation skills to translate requirements into specifications for program objects, functions, and systems.
- 4 years’ experience estimating cost, effort, and duration of product deliverables of high complexity.
- 5+ years’ experience analyzing technical problems and delivering solutions of high risk.
- 4 years’ experience programming in targeted languages and utilities for the distributed environments
- 4+ years’ experience with quality assurance and testing procedures, processes and techniques employed within areas of technical specialty.
- 4 years’ experience with concepts, tools and processes used for estimating, tracking, managing, and reporting work.
- 1+ years’ experience training, mentoring and share knowledge in both individual and group settings.