Gurgaon, Haryana, India Post Date: May 16, 2023 Full Time
Apply for job
Job Description
Responsibilities:
You work with your team to invent, design and build software that is stable and performant.
You write code that an SDE unfamiliar with the system can understand.
Your solutions are pragmatic and you are proficient in a broad range of design approaches and know when it is appropriate to use them (and when it is not).
You do things with the proper level of complexity the first time (or at least minimize incidental complexity).
You consider the legacy of the code you produce, limiting the use of short-term workarounds.
You create flexible software without over-engineering.
You work on project ideas with customers, stakeholders, and peers.
You help your team evolve by actively participating in the code review process, design discussions, and team planning.
You take on projects and make software enhancements that improve team software and processes.
Requirements:
Bachelor's degree in Computer Science, Software Engineering.
Experience in software design and development.
Hands-on experience in Core J2EE or Core Java (collection, multi-threading, OOPS concepts), MySQL, and Kafka.
Profound insight into Java and JEE internals (Class loading, Memory Management, Transaction management, etc).
Computer Science fundamentals in object-oriented design, data structures, algorithm design, problem-solving, and complexity analysis.
A strong track record of project delivery for large, cross-functional projects.
Experience building complex software systems that have been successfully delivered to customers.
Experience with building high-performance, highly-available, and scalable distributed systems.
Experience with API Design, ability to architect and implement an intuitive customer and third-party integration story.
Ability to think and analyze both breadth-wise (client, server, DB, control flow) and depth-wise (threads, sessions, space-time complexity) while designing and implementing services.
A willingness to dive deep, experiment rapidly, and get things done.