Panenco is a boutique software studio in Belgium and Ukraine. We build next-gen B2B SaaS products and enterprise AI solutions, always with an entrepreneurial spirit. We're a small team of the best and brightest, looking for 10x people who love to tackle challenging problems. We give you significant ownership and room to grow, expecting you to take charge and continuously evolve with the latest and greatest in our industry.
About the position
We’re looking for software engineers with strong computer science fundamentals and an entrepreneurial edge to build robust products end-to-end on our Node.js and React stack. You’ll work across the full stack – from database schema to UI – joining a dedicated product team alongside some of the best and brightest people in our industry. The balance between front-end and back-end work flexes depending on the project, and we expect you to be comfortable owning features from idea to production.
Technologies and required skills
We expect engineers in our team to take on a broad set of responsibilities, always acting in the interest of the product rather than sticking to the boundaries of any specific domain. You have an in-depth grasp of the majority of the following technologies:
Core Language & Runtime
TypeScript: strong typing, generics, modern ES standards
Node.js: event loop, async patterns, streams, modules, runtime fundamentals
Strong computer science fundamentals: data structures, algorithms, system design
Back-End
NestJS: modular architecture, dependency injection, decorators, guards, interceptors, pipes
REST API design: resource modeling, versioning, error handling, idempotency
Authentication & authorization: JWT, OAuth/OIDC, session management, RBAC patterns
Database & Data Layer
PostgreSQL: schema design, indexing, query optimization, transactions
ORMs: hands-on experience with Drizzle ORM and/or Prisma
Data modelling: turning business logic into comprehensible data structures
Migrations, schema evolution, data integrity
Front-End
React: function components, hooks, composition patterns, controlled vs derived state, React Server Components (RSC)
Typescript: strong typing, generics, modern ES standards
Next.js: App Router, Server Components, Server Actions, routing concepts, SSR/SSG patterns
UI & Styling
Design systems and component libraries: shadcn/ui (primary), Radix UI, MUI, Ant, Atlassian UI
Styling: modern CSS with Tailwind CSS, CSS Modules, SCSS
Responsive layouts and cross-browser compatibility
Forms & Validation
React Hook Form: form state management and validation
Zod: schema validation and type inference
Testing & Quality
E2E testing: Playwright or Cypress
Understanding of test pyramid: unit, integration, and E2E testing strategies
CI integration: test automation in continuous integration pipelines
Code quality: focus on readability, maintainability, and reusability
Build Tools & Module Bundlers
Vite (widely used across our projects)
Webpack
Next.js build system: experience with Next.js build and development tooling
Module bundling concepts: understanding of modern bundling approaches
Error Tracking & Observability
Sentry or similar tools for frontend error tracking and monitoring
Ability to interpret production errors and improve system reliability
Security Fundamentals
Frontend security: XSS, CSRF, secure handling of authentication tokens
Backend security: input validation, SQL injection prevention, secrets handling, rate limiting
OWASP Top 10
Permissions and authorization patterns
Web & Browser Fundamentals
HTTP/HTTPS, caching, cookies, CORS
Event Loop, microtasks vs macrotasks, Web APIs
Performance: client-side and server-side performance considerations
Accessibility: WCAG awareness, keyboard navigation, screen readers, semantic HTML
AI-Assisted Development
Hands-on experience using AI coding assistants (Claude Code, Cursor, Codex, or similar) in daily development workflow
Ability to write effective prompts, revi

