- Proficiency in Java, with a good understanding of its ecosystems
- Sound knowledge of Object-Oriented Programming (OOP) Patterns and Concepts
- Familiarity with different design and architectural patterns
- Skill for writing reusable Java libraries
- Knowhow of Java concurrency patterns
- Basic Understanding of the concepts of MVC (Model-View-Controller) Pattern, JDBC (Java Database Connectivity), and RESTful web services
- Experience in working with popular web application frameworks like Play and Spark

About codersbrain
About
Connect with the team
Similar jobs

They are in the process of setting up an India IT Development Centre in Gurgaon.
We are actively seeking an experienced Sr Systems Engineer to join their IT team.
To deliver desired, sustainable business outcomes and assure the integrity and continuity of our systems. This position is responsible for the development, maintenance, and support of the company's software systems. This includes teaching domain expertise, providing technical guidance and mentoring, supporting the customers, resolving problems, and training as required.
Key Responsibilities
For developing, configuring, and modifying complex integrated business and/or enterprise application solutions within various computing environments by designing and coding component-based applications using various programming languages; applying various software development methodologies (e.g., Agile, Waterfall);
building partnerships with IT teams and vendors to ensure written code adheres to company architectural standards, design patterns, and technical specifications; producing and validating design artefacts (e.g., object models, sequence diagrams) to help others understand and adhere to company coding standards; leading, mentoring, and training other technical resources.
a) 6-8 yrs of software development exp.
b) Rest API, design, build, deploy & implement across API gateway platforms.
c) 4+ yrs Experience in the development of Java, Spring framework (Spring boot, spring data), JPA & Hibernate, JDBC with SQL.
d) Experience in Microservices architecture & working in linux platform.
e) Experience in cloud platforms preferably GCP (Google cloud platform) & utilizing Open source integration technologies.
f) Experience working with CA API gateway platform (formerly layer7) or related product
Develop, record and maintain cutting edge web-based J2EE, JAVA applications.
Experience on Java Spring Framework is required.
Experience on Hibernate is required.
Experience on REST Services is required.
Object-oriented programming, design, and patterns.
Strong proficiency with:Relational database concepts and data modeling.
Good communication skills to interact with customer, understand their requirement, effectively record the requirement and implement the same.
Job Description:
Minimum 3+ years of experience
Java, OOPS, Data structure, Design Patterns, Multithreading, Spring, Hibernate, Java Script based technology, knowledge of J2EE, PL - SQL..
Core Java Topics including Language Features, Architecture.
OOP Concepts in depth with real time scenarios
Understandings of special Keywords and their applicability as well as advantages and
disadvantages - Like static, final, this, super etc. static should be in depth
Singleton class, Serialization, Cloning, Anonymous Inner class concepts.
In depth concept of Dynamic and static polymorphism & Multiple Inheritance issue/ resolve.
Concepts on String, Exception Handling, Array etc.
Java SE 8 and 9 Features: Functional Inheritance, Lambda Expression, default and static method
etc.
Collection Classes in detail along with the internal data structure and working principle.
Multithreading concept. Concept on ConcurrentHashMap etc.
Analysis of Algorithm - Time Complexity – Big O Calculation
Code Optimizing techniques, Different Algorithm designs and strategies.
Design patterns in Java
Different Sorting & Searching Algo with their Time complexity analysis
Problem solving using Hackerrank or similar sites, with focus on Arrays, Linked Lists, Hash Maps,
Trees, Balanced Trees, Stacks, Queues, Strings , Big Number , Data Structures, Object Oriented
Programming
Exception Handling – Advanced, Sorting, Search, Recursion, Graph Theory.
Note: Core Java + PL/SQL (Unix will be add on)

As a Backend Developer, you will work on the latest and greatest in high performance
web development, data science, community development and mobile technologies.
What you will do:
- Playing a part in defining software architectures – collaborate with leads to explore existing systems, determine areas of complexity, uncover potential risks to successful implementation, and learn the applications’ capabilities.
- Implementing solutions as per technical design for new features and changes to existing components.
- Participating in the full development lifecycle of new functionality and enhancements to existing applications.
- Committing to producing high quality, highly performing and robust software within agreed time estimates and to agreed quality standards.
- Managing all stakeholder expectations.
- Working alongside global teams.
- Taking responsibility for successful delivery.
- Being able to work in a fast paced Agile/SCRUM environment.
- Following coding standards, building appropriate unit tests, integrating tests and deployment scripts.
- Assisting in defining software architectures – Collaborating with leads to explore existing systems, determining areas of opportunities.
- Translating designs and style guides provided by the Design team into functional user interfaces, ensuring cross browser compatibility and performance.
- Contributing to continual improvement by suggesting improvements to user interface, software architecture or new technologies.
What you need to have:
- Ability to fluently code in Java Spring or similar J2EE frameworks.
- Solid knowledge of application deployment in AWS cloud, Kubernetes, Docker.
- Ability to code in ReactJS or similar Javascript frameworks.
- Proven experience with responsive design, fullstack web development, consumption/creation of RESTful APIs.
- Bachelor’s or Master’s degree in Computer Science or related engineering field w/experience in software development.
- 3-7 years of experience developing customer facing web applications.
- 3-7 years of experience in Java Spring or similar J2EE frameworks.
- 3-7 years of experience in front-end development using JavaScript, knowledge of various JavaScript libraries and micro frameworks (React, Angular, Backbone), HTML and CSS.
- 3-7 years of experience coding using object-oriented and aspect-oriented programming, architecture and design patterns.
- Strong understanding of RESTful API principles.
- Strong understanding of security best practices.
- Strong experience with unit testing and end-to-end testing.
- Knowledge of : Programming languages Java 8, J2EE, Node.js, Design Patterns, HTML, CSS, JavaScript Web and cloud Technologies RESTful web services, Cloud functions, Amazon Web Services, SEO/ Sitemap, Serverless
- architecture, JSON Database Management MySQL, PostgreSQL, Elasticsearch, Firebase realtime database, Hibernate, Liquibase, Percona, Redis, Memcached Frameworks, Libraries and Tools Dropwizard, Jersey,
- Expressjs, RabbitMQ Web / Application Server Nginx Other Tools and Utilities Eclipse, VS Code, Postman, Git, Gradle, Maven, Imagemagick, Jmeter Operating Systems Linux, Windows.
- Experience in implementing Material Design UI and UX for customer centric frontend.
- Designing, coding, and debugging software using J2EE, Spring boot,Microservices ,AWS .
- Work closely with Solution architects to understand the architecture
design and implement software designs accordingly. - Improving the performance of existing software.
- Providing training to other engineers and code review.
- Maintaining and upgrading existing software.
- Recommending new technologies that can help increase productivity.
- Supervising and overseeing the technical aspects of projects.
- Investigating software-related complaints and making necessary adjustments to ensure optimal software performance.
- Regularly attending team meetings to discuss projects, brainstorm ideas, and put forward solutions to any issues.
- Mentioning Software engineers on correct coding practices.

- B.Tech/B.E (preferably in Computer Science Engineering)
- 7+ years of hands-on programming experience in building data-driven REST APIs, services & platforms using advanced Java frameworks like Spring, Redis, Node.js etc. with deep focus on integration & scale.
- We also look for hands-on experience with Mysql, Elasticsearch (or Solr) and Nosql stores.
- Our evaluation starts with focus on computer science fundamentals, data structures & algorithms.
- You will have been learning new technologies every week and prefer folks who can use golang/rust for backend development and are familiar with equivalent data stores, index stores and pub-sub technologies.
- Develop, maintain and support company
- Assist in technical specification and solution design documentation to address customer needs
- Ensure customer implementations are delivered to meet/exceed customer expectations
- Collaborate with cross-functional teams on project delivery, solution development, and deployment as needed
Requirements:
- 2+ years experience in a software development/consulting role, preferably in comprehensive eBusiness and Supply Chain Solutions
- 2+ years experience in Software Analysis, Design, and Development using J2EE technology stacks (Core Java, JSP, XML, Hibernate & Java scripts) and Oracle database (PL/SQL)
- 2+ years experience with the configuration and Installation of J2EE servers like Web logic, Web Sphere, and Oracle
- 2+ years experience with integration technology (knowledge of EAI and B2B tools)
- 2+ years working knowledge of UNIX system (Solaris and Linux)
- Exceptional verbal and written communications skills
- Excellent interpersonal & planning skills and cross-group coordination at all levels
- Bachelor Degree in Computer Science, or equivalent
- Willing to travel when needed.
Preferred (Optional) Skills:
- Supply-chain domain experience implementing and integrating Global Trade Management solutions
- Experience in the integration, deployment or support of an ERP, SCM, or similar systems from SA
1 Bachelor’s / Masters’ degree from a reputed university
2 Technical certifications in Java is a good to have. Other programming certifications and
experience e.g., Python or C# is a plus.
3 Years of experience: 4-7 years for Senior Developer and 0-3 years for Developer
Technical Competencies
1 Hands on experience in writing software applications, in particular server side and backend
applications. Web development expertise is a plus.
2 Software development expertise
• Server technologies – Java based application development. Familiarity with various
Java based development frameworks. Spring development experience is a plus.
• Database technologies - Knowledge and familiarity with SQL. Experience with MySQL
as well as NoSQL databases such as MongoDB is a plus.
• Cloud technologies – Experience in building applications on cloud platforms,
especially on MS Azure, including familiarity with Cloud APIs, is a plus.
• Web technologies – Experience building web applications with JavaScript, CSS,
HTML, and expertise with frameworks such as Angular, Express, Node and others
3 Experience in agile software development and development in sprints
About the opportunity
What you’ll be doing:
- You will contribute to all aspects of an agile software development life-cycle including design, architecture, development, documentation, testing and operations.
- You will build cutting-edge scalable systems by writing simple and efficient code.
- You will push your design and architecture limits for new product development.
- You will collaborate with product managers, and other key stakeholders within the MMT family to successfully execute projects.
- You will ensure compliance with build/release and configuration management process.
What you’ll bring to the table:
- You possess good understanding of Agile Methodology, Object Oriented Programming Concepts and Responsive Designs.
- You have hands-on experience on Java/ J2EE stack and have done development across multiple browsers/platforms delivering mind-boggling results.
- You thrive in complexity and jump at the opportunity to collaborate with colleagues to delivery projects within tight deadlines.
- If you have work experience in a product/start-up company, we’ll like you even more.
Our Purpose and Challenges
With over 47% market-share, MakeMyTrip is India’s first and biggest travel company. In fact, one in every four passengers at an airport is our customer. Driven by the desire to provide an exceptional travel experience for our customers, we have continuously stayed ahead of the curve by developing technology and products to meet the ever-changing demands of the rapidly evolving travel ecosystem.
We are currently solving multiple challenging problems, including -
- How to bring the next 100 million users to our platform?
- How to leverage customer insights to create a truly personalised experience for users?
- How to create a delightful experience for our users, to make travel synonymous to MMT?
• Understanding fundamental design principles behind a scalable application.
• Creating database schemas that represent and support business processes.
• Implementing automated testing platforms and unit tests.
• Knack for writing clean, readable Java code.
Job Requirement:
• Profound insight of Java and JEE internals (Classloading, Memory Management, Transaction management etc)
• Hands on experience in designing and developing applications using Java EE platforms.
• Excellent knowledge of Relational Databases, SQL and ORM technologies (JPA2, Hibernate)
• Experience in the Spring Framework
• Experience in developing web applications using at least one popular web framework (JSF, Wicket, GWT, Spring MVC)
• Experience with popular web application frameworks, such as Play and Spark
• Familiarity with Java GUI frameworks (such as Swing, SWT, and AWT depending on project requirements)
• Experience with both external and embedded databases
• Basic understanding of the class loading mechanism in Java
• Basic understanding of JVM, its limitations, weaknesses, and workarounds
• Proficient understanding of code versioning tools, such as Git
• Familiarity with build tools such as Ant, Maven, and Gradle
• Familiarity with continuous integration.

