Eligibility Any Graduate
2 - 5 yrs
Job Role Software Engineer Java
NICE is guided by a deep commitment to genuine customer satisfaction, environmental sustainability and good corporate citizenship. Whether through the delivery of environmentally safe products to the marketplace or our employees' donation of time and skills to local communities, NICE is known for responsible business conduct and corporate citizenship.
1. Work with senior software engineers, architects, and managers in the design process for software products and services; contribute to the implementation planning and estimation
2. Communicate software designs to other software engineering staff members through code and textual and pictorial documentation as needed. This includes interfacing directly with other groups inside and outside of R&D as needed.
3. Lead the end-to-end implementation and support of the software through leading by example to ensure complete quality coverage and high degrees of responsiveness to any issues that come up throughout the complete lifecycle of the software.
4. Ensure the intended design and quality levels are met through regular code reviews and testing of the software in-development. Mentor and coach peer and junior engineers and champion best practices and encourage software craftsmanship.
5. Personally contribute high volumes of quality code that is delivered with that of your colleagues in regular releases and deployments.
Experience: 2 - 5 years of recent experience as a practicing software engineer
1. Advanced mastery of the Java language and its ecosystem of tools and frameworks; proficient with Java algorithms and data structures
2. Working proficiency with Linux/UNIX operating systems
3. Experience in database development with SQL; NoSQL database experience a plus
4. Knowledge and experience with software design patterns and how they can be incorporated into software design.
5. Experience developing enterprise-grade software products that can perform, scale, and integrate into a broad enterprise ecosystem.
6. Experience developing and supporting multi-tiered, service-oriented applications in a production environment.
7. Experience developing and supporting hosted and/or multi-tenant software delivered as-a-Service (SaaS).