Senior Software Engineer

NICE Logo

NICE

πŸ“Remote - India

Summary

Join NiCE, a global market leader, and become a top-performing software engineer. You will excel in designing, developing, and testing high-quality software, ensuring projects meet requirements within constraints. Collaborate with senior engineers and architects, communicate designs effectively, and lead a scrum team. Contribute high-quality code, maintain design standards, and mentor junior engineers. This role requires extensive experience in Java, Spring Framework, RESTful APIs, microservices, JavaScript, and various web technologies. NiCE offers a hybrid work model (NiCE-FLEX) with flexibility and numerous internal career opportunities.

Requirements

  • Experience in Java programming, including data structures, threading, OOP, design patterns, functional programming, and memory optimization
  • Proficient in using Spring and Spring Boot for web applications or web services
  • Familiarity with JMS/Kafka and API Gateway/reverse proxy technologies
  • Hands-on experience with RESTful API development and microservice architecture
  • Proficiency in JavaScript programming
  • Experience with ReactJS (or similar frameworks) for complex pages, authentication/authorization, and state management
  • Proficiency in HTML5, CSS3, and Responsive Web Design, including grids, layouts, and offline storage
  • Experienced with MySQL/Postgres and MongoDB, including schema definition, query performance tuning, and ORM
  • Experience in developing scalable multi-tenant SaaS-based solutions
  • Familiarity with public cloud infrastructure and technologies such as AWS, Google Cloud Engine, or Azure
  • Experience with Continuous Integration and Delivery using Jenkins, Docker, Kubernetes, and Artifactory
  • Experience working in an Agile development environment and using work item management tools like JIRA
  • Experience - 5 to 7 yrs

Responsibilities

  • Serve as a top-performing engineer, excelling in the design, development, and testing of high-quality software
  • Ensure all projects meet specified functional and non-functional requirements within given time and resource constraints
  • Collaborate in Design Process: Work with senior software engineers, architects, and managers to design software products and services
  • Contribute to implementation planning and estimation
  • Communicate Software Designs: Convey software designs to other engineering staff through code, textual, and pictorial documentation
  • Interface with various groups within and outside R&D as needed
  • End-to-End Implementation and Support: Lead by example to ensure comprehensive quality coverage and high responsiveness to issues throughout the software lifecycle
  • Maintain Design and Quality Standards: Ensure design and quality standards are met through regular code reviews and testing
  • Mentor and coach peers and junior engineers, promoting best practices and software craftsmanship
  • Contribute Quality Code: Personally contribute significant volumes of high-quality code, ensuring regular releases and deployments alongside colleagues
  • Lead Scrum Team: Lead a scrum team of developers and QA engineers to meet roadmap commitments effectively

Preferred Qualifications

  • Strong analytical and problem-solving abilities
  • Excellent communication and collaboration skills
  • Experience with Spring Security/Batch and security technologies like SAML, OAuth, and JWT is a plus

Benefits

At NiCE, we work according to the NiCE-FLEX hybrid model, which enables maximum flexibility: 2 days working from the office and 3 days of remote work, each week

Share this job:

Disclaimer: Please check that the job is real before you apply. Applying might take you to another website that we don't own. Please be aware that any actions taken during the application process are solely your responsibility, and we bear no responsibility for any outcomes.