Company Description
We are a Digital Product Engineering company that is scaling in a big way! We build products, services, and experiences that inspire, excite, and delight. We work at scale — across all devices and digital mediums, and our people exist everywhere in the world (15000+ experts across 26 countries, to be exact). Our work culture is dynamic and non-hierarchical. We are looking for great new colleagues. That is where you come in!
Job Description
- Perform new application development, including initial design and workload evaluation, to estimate work duration.
- Provide maintenance support and enhance the performance of existing application code.
- Review, document, and refactor existing application code to optimize efficiency.
- Analyze and design databases within the application area, working individually or coordinating as part of a team.
- Monitor and troubleshoot production software issues, providing timely solutions.
- Analyze user needs and software requirements to assess the feasibility of design within time and cost constraints.
- Collaborate with systems analysts, engineers, programmers, and product managers to design systems, gather project limitations, and understand system requirements.
- Store, retrieve, and manipulate data for system analysis and capability evaluation.
- Design, develop, and modify software systems using scientific analysis and mathematical models to predict outcomes and consequences of design decisions.
- Develop and coordinate unit testing, system testing, and validation procedures, ensuring proper documentation.
- Ensure all software development adheres to system performance standards set by the organization.
- Coordinate software deployments and monitor applications to ensure they meet the required specifications.
- Mentor junior developers and provide guidance on technical issues and best practices.
- Perform other duties as assigned by management, ensuring compliance with legal policies and procedures.
Qualifications
- Bachelor’s degree in Computer Science, Information Technology, or a related field.
- 8+ years of recent software development experience, with strong proficiency in Java/Spring.
- Proficient in Object-Oriented Design and Programming (OOD/OOP).
- Experience with build management tools, preferably Maven.
- Hands-on experience with version control systems, particularly Git.
- Proficiency in IDE-based development using Eclipse or IntelliJ.
- Skilled in building unit tests and integration tests using JUnit or similar testing frameworks.
- Strong SQL/NoSQL development experience.
- Proven experience building web services, preferably in RESTful architecture.
- Solid understanding of data structures and algorithms.
- Experience working with asynchronous messaging technologies such as JMS, Apache Kafka, Apache Pulsar, or RabbitMQ.
- Expertise in production troubleshooting and analysis using log/debugging tools like Splunk or AppDynamics.
- Collaborative team player with excellent communication skills.
- Experience with container technologies such as Docker, Kubernetes, Tomcat, or Jetty.
- Proficient in handling transactions across databases and services.
- Strong understanding of process improvement and product management principles.
- Experience working with ORM frameworks such as Hibernate.
- Skilled in multi-threading and concurrent programming.
- Knowledge of security frameworks, caching technologies, and microservice architecture.
- Familiarity with enterprise architecture and scaling applications for performance and availability.
- Expertise in data interchange technologies such as JSON and XML.
Must-Have Skills:
- Java/Spring, Object-Oriented Programming, SQL/NoSQL, RESTful Web Services, Multi-threading, Production Troubleshooting, Messaging Technologies (e.g., Kafka, RabbitMQ), Unit Testing, Docker/Kubernetes, Git.
Good-To-Have Skills:
- Asynchronous Messaging (JMS, Apache Pulsar), Transaction Handling, ORM (Hibernate), Microservices, Enterprise Architecture, Security Frameworks, Cache Technologies, JSON/XML.
Top Skills
What We Do
Nagarro helps future-proof your business through a forward-thinking, fluidic, and CARING mindset. We excel at digital engineering and help our clients become human-centric, digital-first organizations, augmenting their ability to be responsive, efficient, intimate, creative, and sustainable. Today, we are 19,000 experts across 36 countries, forming a Nation of Nagarrians, ready to help our customers succeed.