Role Overview
NIQ is seeking a Software Engineer to develop new features, modules, and components across the full stack, focusing on frontend UI using Angular, backend APIs using Spring Boot, and database interactions using PostgreSQL. The role involves defining application architecture, collaborating with cross-functional teams, and ensuring high-quality, scalable, and secure solutions.
Responsibilities
- Develop new features, modules, and components across the entire stack, including frontend UI (Angular), backend APIs (Spring Boot), and database interactions.
- Build responsive, user-friendly frontend interfaces using Angular, HTML, CSS, TypeScript, and related technologies.
- Design and implement robust, scalable backend services using Java and the Spring Boot framework.
- Define the overall application architecture, ensuring solutions are scalable, secure, and aligned with best practices.
- Work closely with cross-functional teams, including product design, QA engineers, and other developers, to understand requirements and deliver high-quality solutions.
- Write clean, maintainable, and efficient code, participating in code reviews to maintain quality standards and consistency.
- Perform unit testing, debugging, and troubleshooting of applications to ensure optimal performance and security.
- Utilize databases specially PostgreSQL, and write efficient SQL queries and schema designs.
- Support application deployment and post-production issues, with an understanding of CI/CD pipelines and cloud platform Azure.
- Proficiency with version control systems, such as Git.
- Experience with Agile/Scrum methodologies.
Requirements
- 3+ years of hands-on experience with Java, Spring Boot and REST API design/development.
- Solid knowledge of data structures and object-oriented programming (OOP) principles.
- Experience with SQL and database fundamentals.
- Proficiency with JSON structures, parsing, and validation.
- Familiarity with logging frameworks (e.g., SLF4J, Logback) and debugging tools.
- Working experience with Git/GitHub for version control and collaboration.
- Ability to write clean, readable, and maintainable code.
- Exposure to microservices architecture and inter-service communication.
- Knowledge of Cloud platforms (Azure, AWS, or GCP).
- Familiarity with unit testing frameworks (JUnit, Mockito).