Senior Software Engineer/Module Lead Software Engineer
Location:
Noida/Bengaluru/Indore/Gurgaon
Qualification:
Graduates/Postgraduate in CSE/IT or related field
Experience:
3-10 Years of experience in Java/J2ee
Technology:
Java/J2EE
Role/Skills:
- Require 4-8 years of rich experience in Java/J2EE Technologies with BE/B.Tech/MCA in Computers
- Well versed with Enterprise Core Java 8
- Expert knowledge in Spring while designing/implementing RESTful APIs
- Hands-on experience in terms of designing, implementing & deploying Microservices in distributed systems. Good to have knowledge on frameworks for building the same(Spring Boot/Spring Cloud/Vert.x/GoMicro/Flask/Molecular)
- Proficient understanding of build tools (eg. Ant, Maven), code versioning tools (eg. Git) with Continuous Integration
- Knowledge and experience with Kafka, Redis, NoSQL Database (eg. Cassandra), SQL Database (eg. MySQL), Distributed Message Queues alongwith Distributed Caching
- Good to have knowledge on Containers & Container Management Platforms (eg. Dockers, Kubernetes)
- Possessing in-depth knowledge of various Design Patterns (Java/J2EE/Microservices) & capable of providing design & architecture of typical business problems
- Good to have understanding of Reactive Programming
- Good to have worked on open source products
- Exposure and awareness of complete PDLC/SDLC. Good to have experience working in projects with Agile Scrum methodology
- Smart Java engineer with strong problem-solving skills & ability to thrive in a fast paced, dynamic environment & operate under stringent deadlines
- Strong technical development experience on writing performant code leveraging best coding practices as well as conducting code reviews
- Self-starter & resourceful personality with good communication, problem solving & interpersonal skills
- Confident, highly motivated and passionate about delivery and customer satisfaction
- Out of box thinker and not just limited to work done in existing assignment(s)
Responsibilities:
- Design & implement solutions arising out of highly concurrent systems
- Anticipate on technological evolutions
- Design, build & maintain efficient, reusable & reliable code with quality & timely deliverables
- Ensure end-to-end ownership of all tasks being aligned
- Drive various architectural, design and status calls with multiple stakeholders
- Provide the team technical direction(s)/approach(es) to be undertaken and guide them in resolution of queries/issues etc.
- Test implementation, troubleshoot & correct problems
- Prepare training manuals for users
- Mentor the team in design & development of software application(s)/component(s)
- Fulfil organizational responsibilities (sharing knowledge & experience with other teams / groups)
- Conduct technical training(s)/session(s), write whitepapers/ case studies / blogs etc.