- Frontend: JavaScript (ES6+), jQuery, Web Components, custom SPA architecture, DOM API, events
- Backend: PHP 7.2 – 8+, custom framework, templates, REST API
- DevTools: Git, Docker, Chrome DevTools, Figma
- Other: WebSockets, Session management, internal event bus
- Refactoring the frontend: transitioning from a procedural to a component-based structure
- Creating custom WebComponents and maintaining jQuery code
- Working with templates based on Figma designs
- Writing endpoints and backend logic (action API)
- Synchronizing events between the front and back (including WebSocket)
- Simplifying complex logic into simple, repeatable constructs
- Consistency between JS and PHP: naming, structure, behavior
- Deep knowledge of JavaScript + jQuery: context (this), async, closures, DOM, events
- Experience refactoring frontend architecture without frameworks
- Confident PHP skills — 50% of tasks: endpoints, templates, logic
- Understanding of WebSocket, event-driven approaches
- Ability to work with Figma designs
- Experience with Git, Docker, Chrome DevTools
- Experience in creating or supporting custom SPA solutions without React/Vue
- Understanding the weaknesses of DOM, Shadow DOM, caches, memory leaks
- Ability to simplify the complex — in code, logic, and ideas
- Experience in gradual modular migration (MVC, SPA, SSR)
Welcome!
We are looking for an engineer who is equally proficient in both JavaScript (DOM, async, Web Components, jQuery) and PHP (templates, endpoints, backend logic).
We are updating the architecture of our product — creating a new interface logic in the form of a Single Page Application based on a custom core. The project is complex: it involves deep refactoring with a gradual transition to a clean MVC structure, without a revolution, but with a clear focus on quality and control.
This role is not for framework-dependent developers. Here, flexibility, a deep understanding of the browser, and the desire to organize chaos, rather than create more of it, are needed.
Stack:
Responsibilities:
Requirements:
Advantages: