Software Engineer - Full Stack (NextJS & Node.js)
Join us on a journey to redefine the boundaries of whats possible as we work together to create a smarter, more connected world.
At Upview, we are not just building products; we are building a culture of continuous learning, creativity, and empowerment. We want to inspire you to think differently, embrace new technologies, and push the limits of what is possible. Join us on this exciting journey, and together we will shape the future of the digital landscape.
Requirements
- Bachelor’s degree in Computer Science, Software Engineering, or a related field. A Master’s degree or additional certifications are a plus.
- Minimum of 2 years of professional experience in full-stack development with a strong focus on React/NextJS and Node.js.
- Expertise in advanced React concepts, including hooks, context API, render props, and performance optimization techniques (e.g., memoization, virtualization).
- Proficiency in NextJS-specific features like static site generation (SSG), server-side rendering (SSR), API routes, and incremental static regeneration (ISR).
- Extensive experience with Node.js for building scalable backend services, using frameworks like Express.js or Nest.js.
- Strong knowledge of JavaScript (ES6+) and TypeScript, with experience managing large, modular codebases.
- Skilled in creating complex, responsive layouts using CSS-in-JS solutions (e.g., Styled Components, Emotion), flexbox, and CSS Grid.
- Familiarity with front-end build tools and package managers (e.g., Webpack, npm, Yarn).
- Advanced experience with state management libraries like Redux, MobX, or Recoil, including handling global state, side effects, and asynchronous data flows.
- Strong background in designing, consuming, and securing RESTful APIs, with experience in GraphQL as a plus.
- Proficiency with database systems, including SQL (e.g., MySQL, PostgreSQL) and NoSQL (e.g., MongoDB), along with query optimization and schema design.
- Experience with authentication and authorization mechanisms, such as JWT, OAuth, or Passport.js.
- Knowledge of DevOps practices, including CI/CD pipelines (e.g., Jenkins, GitHub Actions), containerization with Docker, and cloud deployment on platforms like AWS or Azure.
- Familiarity with monitoring and logging tools (e.g., Prometheus, Grafana, ELK stack) to ensure application health and performance.
- Experience with testing frameworks and tools for both front-end (e.g., Jest, React Testing Library, Cypress) and back-end (e.g., Mocha, Chai) testing.
- Understanding of security best practices, including vulnerability scanning, penetration testing, and compliance with web security standards.
- Excellent problem-solving skills and the ability to handle complex technical challenges, such as optimizing for high traffic, managing distributed systems, or ensuring cross-browser compatibility.
- Strong collaboration skills, with experience working in Agile, Scrum, or Kanban environments.
About the Role
- Lead the design and architecture of complex full-stack web applications using React/NextJS and Node.js/Supabase, ensuring scalability, performance, and maintainability.
- Design and implement advanced features using modern React patterns (e.g., hooks, context API, higher-order components) and Node.js/Supabase best practices.
- Optimize application performance through techniques like code splitting, lazy loading, memoization, and efficient state management.
- Implement robust authentication and authorization mechanisms (e.g., JWT, OAuth) to ensure secure access to application resources.
- Integrate with third-party services and APIs, handling errors, retries, and edge cases gracefully.
- Mentor and guide junior developers, conduct thorough code reviews, and enforce best practices in coding, testing, and documentation.
- Collaborate with product managers, designers, and stakeholders to define technical requirements, project scopes, and delivery timelines.
- Participate in architectural discussions and contribute to the overall technical strategy of the team.
- Ensure the security of applications, including data encryption, secure storage, and compliance with privacy regulations like GDPR and CCPA.
- Contribute to the development of reusable components, libraries, or open-source projects to enhance the development ecosystem.
- Stay updated with the latest trends in web development, advocating for the adoption of relevant technologies and tools.
- Document architectural decisions, technical specifications, and contribute to comprehensive project documentation.
- Communicate effectively with team members and stakeholders, providing updates, insights, and technical guidance on project progress.