Job Responsibilities:
* Design, build, and maintain efficient, reusable, and reliable Java code
* Ensure the best possible performance, quality, and responsiveness of the applications
* Identify bottlenecks and bugs, and devise solutions to these problems
* Help maintain code quality, organization, and automatization
* Prepare the technical design of complex technology components
Mandatory Skills:
* Proficient in Java (JDK 1.7) or above JDK 8 preferable, with a good knowledge of its ecosystems with a knack for writing clean, readable Java code, writing reusable Java libraries along with knowledge of concurrency patterns in Java
* Solid understanding of object-oriented programming along with various design and architectural patterns
* Hands on experience with Spring, Spring Boot, JUnit
* Familiarity with concepts of MVC, Microservices, RESTful
About Matellio India Private Limited
Similar jobs
Roles and Responsibilities:
- Individuals are responsible for all traditional development activities analysis, design, coding, testing, and documentation.
- Add new features to existing Windows and Web-based applications in Visual Studio 2019. Interacting with internal team.
- Transform business and design needs into innovative products.
- Drive all projects to completion within deadlines.
- Perform thorough testing to find issues ahead of time.
- Engineering software needs more precise analysis & coding skillset
- Enhance skillset by working with fortune 500 clients
- Interacting with internal team.
Qualifications :
- B.E in computer science or related fields.
- Excellent programming & communication skills Strong problem solving, judgmental, and decision-making skills.
- Ability to work at the tactical and strategic levels of IT initiatives.
- Impressive hands-on experience in Java, database(Oracle), OOPS, Java Swing, Javafx.
- Self-Motivated, flexible & Innovative.
Participate and contribute in design and development of the core components of different backend services
Ensure high quality of software development wrt. project architecture, code quality, testing and deployment
Own performance of services in production and implement / push for implementation of systems to monitor and debug and fix an issue in production in lowest TAT
Advocate good engineering has the highest priority with the exception of value delivered to the end user
Requirements
Someone who is particular and takes pride in their choice of code editor and clearly communicate why it is better than everyone else's development environment
Has good expreince in building backend solutions
At least an year of experience with golang eco system is a great plus
Who likes to think in terms of software and data architecture before opening the aforementioned code editor
Comfortable with managing development and deployment services
Open and more importantly excited about learning the new technologies
We are a team of educators and engineers who believe that there is a lot more that can be done when it comes to how people learn things.
Key Responsibilities:
- Rewrite existing APIs in NodeJS.
- Remodel the APIs into Micro services-based architecture.
- Implement a caching layer wherever possible.
- Optimize the API for high performance and scalability.
- Write unit tests for API Testing.
- Automate the code testing and deployment process.
Skills Required:
- At least 3 years of experience developing Backends using NodeJS — should be well versed with its asynchronous nature & event loop, and know its quirks and workarounds.
- Excellent hands-on experience using MySQL or any other SQL Database.
- Good knowledge of MongoDB or any other NoSQL Database.
- Good knowledge of Redis, its data types, and their use cases.
- Experience with graph-based databases like GraphQL and Neo4j.
- Experience developing and deploying REST APIs.
- Good knowledge of Unit Testing and available Test Frameworks.
- Good understanding of advanced JS libraries and frameworks.
- Experience with Web sockets, Service Workers, and Web Push Notifications.
- Familiar with NodeJS profiling tools.
- Proficient understanding of code versioning tools such as Git.
- Good knowledge of creating and maintaining DevOps infrastructure on cloud platforms.
- Should be a fast learner and a go-getter — without any fear of trying out new things Preferences.
- Experience building a large-scale social or location-based app.
2. Data structure (HashMap, treemap, arraylist, linklist),
3. Streaming concepts (partitioning), Junit
4. Exception handling and workflow, Test coverage (why its important, how it gets handled at
java and spring layer, morckito library if the candidate knows that would be great),
5. OOPS concepts (inheritance),
6. Threading (mutex, threadpool, threading implementation, singleton factory, builder pattern,
abstract)
7. Real world problems (atleast 1 to be asked in IAAS interview) (movie ticket booking, parking
booking), To be asked to only selected candidates: Puzzle (probability/)
8. Memory management: Garbage Collection (GC), Heap dump, Thread dump, apache, google
library.
9. Spring frameworks and database. Data lakes, star lakes, schemas, indexing, partitioning,
optimize query, hibernate.
10. Data warehouse vs nosql vs time series database (KDB, DB2), data storage patterns.
11. Types of transaction control. Column level.
12. Query formation, grouping, nested queries, joints (inner joints, outer joints)
13. If candidate has spring exp: Architecture and various layers of Spring, coupling concepts,
dependency injections, inheritance, Bean level, JMS connection pooling concepts, Lambda,
Annotation vs XML, Kafka, Hibernates.
14. Good to have AI/ML inclination.
Bifurcation of Must have and good to have skills:
Must have skills Good to have skills
Core java (60%), spring (15%), and databases
(15%).
Mockito library
Data structure (HashMap, tree map, array list,
link list)
Threadpool
Streaming concepts (partitioning) Memory management
Exception handling Lambda, Annotation vs XML, Kafka, Hibernates
OOPS GCP or any cloud technology
Threading (singleton factory, builder pattern) AI/ML inclination
Real world problems (movie ticket booking,
parking booking)
Spring frameworks and database (indexing,
partitioning, layers of Spring, JMS connection)
Data warehouse vs NoSQL vs time series
database
Junit
Additional Responsibilities: • Knowledge of more than one technology • Basics of Architecture and Design fundamentals • Knowledge of Testing tools • Knowledge of agile methodologies • Understanding of Project life cycle activities on development and maintenance projects • Understanding of one or more Estimation methodologies, Knowledge of Quality processes • Basics of business domain to understand the business requirements • Analytical abilities, Strong Technical Skills, Good communication skills • Good understanding of the technology and domain • Ability to demonstrate a sound understanding of software quality assurance principles, SOLID design principles and modelling methods • Awareness of latest technologies and trends • Excellent problem solving, analytical and debugging skills Technical and Professional Requirements: • Primary skills: Java • Desirables: Java->Microservices, Java->Springboot Preferred Skills: Java Generic Skills: Java->Microservices Java->Springboot Educational Requirements Bachelor of Engineering Service Line Application Development and Maintenance * Location of posting is subject to business requirements.
Experience required
-
Strong hands-on experience in Core Java, JSP, Spring , Struts and Web Services (SOAP and REST)
-
Should have good understanding Object Oriented Design , Domain Driven Design , Database (Oracle,DB2), ORM framework like Hibernate and JavaScript framework
-
Should have awareness on OWASP security vulnerabilities. Knowledge on Security tools like Fortify Checkmarx CAST SonarQube etc will be value added
-
Good understanding on DevOps concept (preferably working experience on Teamcity or Jenkins or Docker)
-
Ability to quickly troubleshooting and diagnosis of the application issues.
-
Provide support delivery and cross functional teams
-
Strong in reviewing technical design
-
Excellent communication skills
-
Excellent customer handling skills
-
Experience in OO, DI, IoC design patterns
-
Recommend changes on project design concepts to improve efficiency.
-
Develop design specifications, installation instructions and other system-related information.
-
Verify stability, interoperability, portability, security and scalability of java system architecture.
-
Evaluate current or emerging technologies to consider monetary factors of java program.
-
Knowledge of Enterprise message bus
Requirements:
- 3 -7 years of software development experience.
- Good grasp on programming fundamentals including OOP, Design Patterns and Data Structures.
- Excellent analytical, logical and problem-solving skills.
- Software Development Engineer.
- Good understanding of complexities involved in designing/developing large scale systems.
- Strong system design skills.
- Experience in technologies like Elasticsearch, Redis, Kafka etc.
- Good knowledge of relational and NoSQL databases.
- Familiarity with common machine learning algorithms. In-depth knowledge is a plus.
- Experience of working with big data technologies like Hadoop, Spark, Hive is a big plus.
- Ability to understand business requirements and take ownership of the work.
- Exhibit passion and enthusiasm for building and maintaining large scale platforms.