{"id":1231563,"url":"https://alion.io/job/searchapi-frontend-engineer-ui-designer-developer-tooling","title":"Frontend Engineer & UI Designer (Developer Tooling)","company":{"id":1852794,"name":"SearchApi","domain":"searchapi.io","url":"https://alion.io/company/searchapi","size_band":"201-500","is_staffing_agency":false,"employer_type":"direct","is_intermediary":false,"listed_via":null,"ats_vendor":"Ashby","truth_index":null},"role":"Design","role_family":"Design","seniority":null,"employment_type":"full_time","work_mode":"remote","remote_scope":"stated_countries","remote_scope_basis":"posting_text","remote_working_hours":null,"hiring_geo_confidence":"inferred","locations":["Luxembourg City, Luxembourg","Hong Kong","Singapore"],"countries":["LU","HK","SG"],"hiring_countries":["DE","JP","FR","GB","AR","AU","AT","BE","BR","BG","CA","HR","CY","CZ","DK","EG","FI","HU","IE","IL","IT","KZ","MY","MX","NL","NZ","NO","PH","PL","RO","RS","ZA","KR","ES","SE","TW","TR","VN","AL","CL"],"hiring_countries_total":56,"salary":null,"salary_estimate":{"min_usd":36000,"max_usd":95000,"period":"year","method":"role_country_seniority_unknown","sample_n":13},"experience_years_min":null,"visa_sponsorship":false,"relocation_package":false,"has_equity":false,"technologies":[{"name":"Claude","optional":false},{"name":"Cursor","optional":false},{"name":"Django","optional":false},{"name":"Figma","optional":false},{"name":"Hotwire","optional":false},{"name":"JavaScript","optional":false},{"name":"Laravel","optional":false},{"name":"Octopus Deploy","optional":false},{"name":"React.js","optional":false},{"name":"Stimulus","optional":false},{"name":"Tailwind CSS","optional":false},{"name":"ViewComponent","optional":false},{"name":"CI/CD","optional":true},{"name":"esbuild","optional":true},{"name":"GitHub","optional":true},{"name":"PHP","optional":true},{"name":"Python","optional":true},{"name":"Ruby","optional":true},{"name":"Ruby on Rails","optional":true},{"name":"Slack","optional":true}],"status":"live","first_seen_at":"2026-06-22T03:44:32Z","employer_posted_date":"2026-06-22","last_verified_at":"2026-09-25T14:59:42Z","board_verified":true,"closed_at":null,"days_open":95,"trust":{"level":"ok","repost_count":null,"flags":[],"days_open":95},"description":"Frontend Engineer & UI Designer (Developer Tooling)\nWe are looking for a builder-designer hybrid who makes a developer-facing product feel premium. You design it in Figma and ship it yourself in Hotwire. If you sweat the 200ms of jank nobody else notices, and you have both the taste to design the thing and the skill to build it in production, this role is for you.\nAbout SearchApi\nSearchApi is a real-time SERP API delivering structured data from 100+ search engines and sources, including Google Search, Google Shopping, Google Jobs, Bing, Baidu, YouTube, Amazon, and many more. We power production workloads for Fortune 500 companies and fast-moving startups who need reliable search data at scale.\nWe're a lean, profitable, bootstrapped team. No VC pressure, no bloat. Just engineers shipping real products to real customers.\nWhy Join Us?\nYou own what developers judge us by. The dashboard, the API playground, the docs, the marketing site. The first impression of our product is your work.\n\nDesign and build, no handoff. You take a feature from a Figma mockup to a merged PR yourself. No designs thrown over a wall.\n\nReal impact. A small team means your work shows up directly in signups, activation, and revenue.\n\nThe best users to design for. You build developer tools for engineers, the most demanding and rewarding audience there is.\n\nBootstrapped and Profitable. We answer to customers, not investors.\n\nWe'd rather hire one person with taste who can ship than a designer and a frontend developer who need a handoff between them.\nTech Stack\nRuby on Rails 8 with Hotwire (Turbo + Stimulus)\n\nTailwind CSS and ViewComponent\n\nesbuild for JavaScript\n\nFigma for design\n\nNative HTML first (, ), Turbo Frames over single-page-app frameworks\n\nWe use Cursor, Claude, GitHub, and Slack daily. We ship multiple times a day with CI/CD.\nYou Control AI, AI Doesn't Control You\nWe ship faster because we use AI tools aggressively, Cursor and Claude. You scaffold components, generate layouts, and iterate on design variations with AI. But you own every pixel and every line that lands. You can tell when an AI-generated layout is generic slop and turn it into something with taste. If you can't, you're not ready for this role.\nWhat You'll Do\nDesign and ship, not hand off. Take a feature from Figma to a merged PR: ViewComponents, Stimulus controllers, Tailwind, the whole thing.\n\nOwn the dashboard. The logged-in experience: usage analytics, request history, billing, API keys. Make a data-dense console feel calm instead of cluttered.\n\nBuild interactive API playgrounds. Where a developer fires a real request and watches structured JSON come back live. Make it the thing people screenshot and share.\n\nOwn the docs and marketing experience. Keep the component system coherent, fast, and beautiful as the product grows week over week.\n\nBuild honest data viz. Turn raw metrics into charts a developer trusts at a glance, using a consistent, semantic color system.\n\nHold the line on craft. Native HTML first, Turbo Frames over client-side state, Tailwind over inline styles. Push Hotwire to its limits before reaching for a dependency.\n\nClean up as you go. Tame the JavaScript bundle, kill dead CSS and one-off controllers before they pile up.\n\nYou own the front end. We don't hand you pixel-perfect specs. You decide what deserves polish now and what ships good-enough, and you make the call.\nThe Hard Parts\nThis role is not for everyone. Here's what makes it hard:\nHotwire-first, on purpose. If your instinct for every interaction is to reach for React, you'll fight the stack instead of using it. The fun, hard part is getting SPA-grade polish out of Turbo, Stimulus, and native HTML.\n\nYou design AND build. Plenty of people do one well. The bar here is taste plus the discipline to ship it in production code, with tests, that passes review.\n\nDeveloper tools are unforgiving. Your users notice a 200ms jank, a misaligned monospace column, or a chart that lies. There's nowhere to hide a sloppy detail.\n\nWide surface, one owner. Dashboard, playground, docs, marketing. You constantly decide what to polish and what to leave, with no PM holding the list for you.\n\nTaste is subjective. You'll defend a design decision in writing, ship it, watch real usage, and change your mind when the data disagrees with you.\n\nIf you want pixel-perfect specs handed to you and someone to manage you, this isn't for you.\nAbout You\nYou design and build. You've shipped frontend you also designed, and it looked genuinely good. Not \"good for an engineer.\" Good.\n\nHotwire-native, or close. Fluent in a server-rendered, component-based stack (Rails + Hotwire ideal; Phoenix/LiveView, Django, or Laravel translate). You reach for native HTML before JavaScript.\n\nTailwind cold. Real opinions about spacing, type scale, and color systems.\n\nYou love developer tools. You have a favorite dashboard and an API console you think is beautiful, and you can say exactly why.\n\nGreat writer. You can explain a design tradeoff in a PR description without needing a meeting.\n\nSelf-directed. You take a vague \"make this nicer,\" turn it into a plan, and ship it.\n\nFluent in English, written and spoken.\n\nRequired experience:\nProduction frontend you designed and built yourself, with links to show it.\n\nStrong with a server-rendered, component-based stack (Rails + Hotwire strongly preferred).\n\nFluent in Tailwind (or a similar utility CSS) and a real design tool like Figma.\n\nWe're especially looking for:\nYou've designed or redesigned a real SaaS dashboard or developer console that's live today.\n\nExperience with ViewComponent, Stimulus, or a design system you maintained yourself.\n\nData-dense charts and a feel for honest data visualization, not just pretty gradients.\n\nYou've cleaned up a real JavaScript bundle or wired up frontend error tracking, with a before/after to show.\n\nYou contribute to design in public: a portfolio site you built, or open-source UI work.\n\nWhat We Look For\nWhat makes a strong application:\nTwo links to UI you designed AND built yourself, ideally a landing or marketing page and a product or app screen. For each, one line on the hardest design decision you made and how you resolved it. The design speaks for itself. A template, or an inability to name a single detail you sweated, does not.\nSignals we look for:\nA portfolio site you built. A redesign with a before/after. Open-source UI work. A Figma file. Evidence of taste plus the discipline to ship it in real code.\nInclude \"Octopus Tentacle\" in your application so we know you read this. [redacted]\n Get to know each other and walk through your work.\n\nTake-home challenge. A realistic design-and-build task that shows how you think.\n\nFollow-up call. Discuss your approach and the tradeoffs you made.\n\nReference check + Offer\n\nWhat You Get\nFully Remote. Work from anywhere.\n\nEquity share. Own a piece of what you're building.\n\nProfit sharing. When we win, you win.\n\nLearn from the founder. Understand how a real SaaS business grows.\n\nAnnual team retreats (last one in Spain).","description_format":"text","description_chars":7023,"description_truncated":false,"requirements":{"experience_years_min":null,"management_years_min":null,"team_size_min":null,"manages_managers":false,"education":null,"security_clearance":false,"languages":[{"language":"Polish","level":"All levels","optional":false},{"language":"English","level":"Advanced (C1)","optional":false}]},"benefits":["Equity"],"hiring_locations":[{"name":"Germany","iso":"DE","kind":"country"},{"name":"Japan","iso":"JP","kind":"country"},{"name":"France","iso":"FR","kind":"country"},{"name":"United Kingdom","iso":"GB","kind":"country"},{"name":"Argentina","iso":"AR","kind":"country"},{"name":"Australia","iso":"AU","kind":"country"},{"name":"Austria","iso":"AT","kind":"country"},{"name":"Belgium","iso":"BE","kind":"country"},{"name":"Brazil","iso":"BR","kind":"country"},{"name":"Bulgaria","iso":"BG","kind":"country"},{"name":"Canada","iso":"CA","kind":"country"},{"name":"Colombia","iso":null,"kind":"country"},{"name":"Croatia","iso":"HR","kind":"country"},{"name":"Cyprus","iso":"CY","kind":"country"},{"name":"Czech Republic","iso":"CZ","kind":"country"},{"name":"Denmark","iso":"DK","kind":"country"},{"name":"Egypt","iso":"EG","kind":"country"},{"name":"Finland","iso":"FI","kind":"country"},{"name":"Hungary","iso":"HU","kind":"country"},{"name":"Ireland","iso":"IE","kind":"country"},{"name":"Israel","iso":"IL","kind":"country"},{"name":"Italy","iso":"IT","kind":"country"},{"name":"Kazakhstan","iso":"KZ","kind":"country"},{"name":"Malaysia","iso":"MY","kind":"country"},{"name":"Mexico","iso":"MX","kind":"country"},{"name":"Netherlands","iso":"NL","kind":"country"},{"name":"New Zealand","iso":"NZ","kind":"country"},{"name":"Norway","iso":"NO","kind":"country"},{"name":"Philippines","iso":"PH","kind":"country"},{"name":"Poland","iso":"PL","kind":"country"},{"name":"Romania","iso":"RO","kind":"country"},{"name":"Serbia","iso":"RS","kind":"country"},{"name":"South Africa","iso":"ZA","kind":"country"},{"name":"South Korea","iso":"KR","kind":"country"},{"name":"Spain","iso":"ES","kind":"country"},{"name":"Sweden","iso":"SE","kind":"country"},{"name":"Taiwan","iso":"TW","kind":"country"},{"name":"Turkey","iso":"TR","kind":"country"},{"name":"Vietnam","iso":"VN","kind":"country"},{"name":"Albania","iso":"AL","kind":"country"},{"name":"Chile","iso":"CL","kind":"country"},{"name":"Costa Rica","iso":"CR","kind":"country"},{"name":"Estonia","iso":"EE","kind":"country"},{"name":"Georgia","iso":"GE","kind":"country"},{"name":"Greece","iso":"GR","kind":"country"},{"name":"Iceland","iso":"IS","kind":"country"},{"name":"Latvia","iso":"LV","kind":"country"},{"name":"Lithuania","iso":"LT","kind":"country"},{"name":"Luxembourg","iso":"LU","kind":"country"},{"name":"Malta","iso":"MT","kind":"country"},{"name":"Moldova","iso":"MD","kind":"country"},{"name":"Portugal","iso":"PT","kind":"country"},{"name":"Slovakia","iso":"SK","kind":"country"},{"name":"Slovenia","iso":"SI","kind":"country"},{"name":"Uruguay","iso":"UY","kind":"country"},{"name":"Hong Kong","iso":"HK","kind":"country"},{"name":"Singapore","iso":"SG","kind":"country"},{"name":"Luxembourg City","iso":null,"kind":"city"}],"hiring_excludes":[],"relocation_offered":false,"industries":["Search Engine Optimization (SEO)","Web Scraping & Proxy Networks"],"lifecycle":[{"event":"open","at":"2026-09-25T14:59:42Z"}],"liveness":{"score":7,"band":"cold","label":"Long shot","p_open":1,"p_active":0.257,"p_room":0.28,"age_days":95,"expected_fill_days":12,"reasons":["conf:12","win:tail","crowd:"],"computed_at":"2026-09-26T03:21:44Z"},"pay":null,"html_url":"https://alion.io/job/searchapi-frontend-engineer-ui-designer-developer-tooling","json_url":"https://alion.io/job/searchapi-frontend-engineer-ui-designer-developer-tooling.json","meta":{"generated_at":"2026-09-26T03:21:44Z","cache_seconds":300,"methodology":"https://alion.io/methodology","terms":"https://alion.io/terms","contact":"https://alion.io/contact","api":"https://alion.io/developers","usage":{"tier":"crawler","counted_by":"address","units_charged":1,"used_today":3579,"day_limit":5000,"remaining_today":1421,"minute_limit":60,"resets_at":"2026-09-27T00:00:00Z"}}}