This job is now closed
Job Description
- Req#: REF18308J
- Perform new application development including initial design and evaluation for work load to give an estimated work duration
- Provide maintenance support and enhance performance to existing application code
- Review and document existing application code
- Analyze and design databases within an application area, working individually or coordinating database development as part of a team
- Monitor and troubleshoot production software issues and provide solutions
- Analyze user needs and software requirements to determine feasibility of design within time and cost constraints
- Confer with systems analysts, engineers, programmers, product managers and others to design system and to obtain information on project limitations and capabilities, performance requirements and interfaces and legacy systems
- Store, retrieve, and manipulate data for analysis of system capabilities and requirements
- Design, develop and modify software systems, using scientific analysis and mathematical models to predict and measure outcome and consequences of design
- Develop and coordinate software unit testing and system testing and validation procedures, and documentation
- Develop in accordance with system performance standards set by the organization
- Coordinate software deployments and monitor applications to ensure specifications are met
- Mentor Junior developers
- Perform other duties as required and assigned by manager and upper management.
- Follow legal policies as directed
- Bachelor's degree or, Information Technology, or a related field
- 3-5 years of recent software development experience
- Strong development experience using Java/ Spring Proficiency in Object Oriented design and programming
- Experience with build management tools, preferably Maven
- Experience with version control tools, preferably Git
- Proficiency with IDE-based development, especially in Eclipse or IntelliJ
- Proficiency building unit tests / integration tests using JUnit or similar SQL/NoSQL development experience
- Experience building web services, preferably using the REST style
- Knowledge of data structures and algorithms
- Experience with Asynchronous messaging technologies such as JMS, Apache Kafka, Apache Pulsar, or RabbitMQ
- Experience with production troubleshooting and analysis using log / debugging tools such as Splunk, AppDynamics
- Collaborative and able to communicate well with the team
- Experience with building applications using container technologies such as Docker/Kubernetes, Tomcat/Jetty Transaction Handling across DBs/Services Process Improvement & Product Management ORM Frameworks such as Hibernate Multi threading, Concurrent programming
- Experience in Security frameworks, Cache technologies, Micro Service Architecture, Enterprise Architecture Scaling applications for performance and availability Data interchange technologies such as JSON, XML
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
Qualifications
About the company
A digital product engineering leader, Nagarro drives technology-led business breakthroughs for industry leaders and challengers through agility and innovation.