{"id":1696000,"url":"https://alion.io/job/thingsboard-qa-team-lead","title":"QA Team Lead","company":{"id":1859652,"name":"ThingsBoard","domain":"thingsboard.io","url":"https://alion.io/company/thingsboard","size_band":"5000+","is_staffing_agency":false,"employer_type":"direct","is_intermediary":false,"listed_via":null,"ats_vendor":"PeopleForce","truth_index":null},"role":"QA","role_family":"QA","seniority":"lead","employment_type":null,"work_mode":"on_site","remote_scope":null,"remote_scope_basis":null,"remote_working_hours":null,"hiring_geo_confidence":"structured","locations":[],"countries":[],"hiring_countries":[],"hiring_countries_total":0,"salary":null,"salary_estimate":null,"experience_years_min":5,"visa_sponsorship":false,"relocation_package":false,"has_equity":false,"technologies":[{"name":"Angular","optional":false},{"name":"Apache Kafka","optional":false},{"name":"AWS","optional":false},{"name":"Azure","optional":false},{"name":"CoAP","optional":false},{"name":"Docker","optional":false},{"name":"Docker Compose","optional":false},{"name":"Flutter","optional":false},{"name":"Gatling","optional":false},{"name":"GitHub","optional":false},{"name":"Grafana","optional":false},{"name":"Java","optional":false},{"name":"Jira","optional":false},{"name":"JMeter","optional":false},{"name":"k6","optional":false},{"name":"LoRaWAN","optional":false},{"name":"MQTT","optional":false},{"name":"OPC UA","optional":false},{"name":"Playwright","optional":false},{"name":"Prometheus","optional":false},{"name":"RabbitMQ","optional":false},{"name":"Selenium","optional":false},{"name":"TeamCity","optional":false},{"name":"Testcontainers","optional":false},{"name":"ThingsBoard","optional":false},{"name":"WebSockets","optional":false},{"name":"Appium","optional":true},{"name":"Dart","optional":true},{"name":"JavaScript","optional":true},{"name":"Kubernetes","optional":true},{"name":"OWASP","optional":true},{"name":"PostgreSQL","optional":true},{"name":"Redis","optional":true},{"name":"Rest API","optional":true},{"name":"Rest-Assured","optional":true},{"name":"TestNG","optional":true},{"name":"TimescaleDB","optional":true},{"name":"TypeScript","optional":true}],"status":"live","first_seen_at":"2026-10-02T12:06:09Z","employer_posted_date":"2026-10-02","last_verified_at":"2026-10-09T00:55:06Z","board_verified":true,"closed_at":null,"days_open":6,"trust":{"level":"ok","repost_count":null,"flags":[],"days_open":6},"description":"ThingsBoard is a B2B IT product company. Our core product is the ThingsBoard IoT platform, and around it we’ve built an ecosystem of standalone products and add-ons.We deliver and constantly improve a scalable, robust, and affordable IoT ecosystem that dramatically reduces time-to-market for life-changing IoT solutions. We also help companies deliver great IoT products based on ThingsBoard.\nWe’ve been building the platform since 2016. Today it runs in production for over a thousand companies worldwide - in energy, manufacturing, retail, telecom, healthcare, and agriculture - and our team has grown to 100+ people in our Kyiv-based office.\nWe are looking for an experienced QA Lead who can combine hands-on technical expertise with team leadership and take ownership of quality across our IoT ecosystem. You will help shape our QA strategy, strengthen test automation, improve release confidence, and ensure our products remain reliable as they scale. If you enjoy solving complex technical challenges and building effective QA processes, we’d love to hear from you.\nRequirements :\n- 5+ years in web/backend product QA, including 2+ years owning one product's quality across several release cycles at a product company.\n- 1+ year leading a team of 3+ engineers: planning, process, metrics, reviews, hiring.\n-Hands-on automation in Java. Our stack: Java (TestNG, REST Assured, Testcontainers), Selenium or Playwright for Angular.\n- Deep API testing: REST, authentication (JWT, OAuth2, API keys), multi-user and multi-tenant scenarios; understanding of WebSocket.\n- Service-to-service integration testing: queues/brokers (Kafka, RabbitMQ or MQTT), webhooks, Docker environments, automated tests in CI.\n- Test design and release discipline: parameterized cases, traceability to issues, regression exit criteria, upgrade-path verification.\n- Understanding of load testing (Gatling, k6, JMeter, protocol simulators) and reading metrics (Prometheus/Grafana).\n- Technical degree: computer science, software/computer engineering, cybersecurity, electronics, telecommunications, automation, applied mathematics, physics.\n- English B2+ (docs, customers, community), fluent Ukrainian; work from our Kyiv office (Podil), flexible hours.\nResponsibilities :\nStrategy and people\nShape the quality strategy for the ecosystem products - ThingsBoard On-premises, Cloud, Private Cloud, Edge, TBMQ broker and IoT Gateway: test levels, deployment matrix, release readiness criteria.\nLead the team: planning, test-code and test-case reviews, mentoring, hiring.\nOwn the metrics: escaped defects, regression cycle time, automation coverage, flaky rate; decide what needs QA and what doesn't.\nAutomation (hands-on)Build a QA-owned automation layer over the TeamCity black-box pipeline: API, WebSocket, integration scenarios with simulators and brokers (Testcontainers, Docker Compose).\nGrow Angular UI automation: extend the Selenium/Page Object layer or make the case for Playwright.\nRaise test documentation: parameterized cases, priorities, traceability to Jira.\nReleases and regressionRun regression for two LTS lines and patches, post-release checks on Cloud in both regions, install/upgrade and security patch (CVE) verification.\nTest transports, integrations and data processing: MQTT (incl. Sparkplug), CoAP, LwM2M, HTTP, SNMP, OPC-UA; LoRaWAN network servers (ChirpStack, The Things Stack, Loriot, ThingPark); cloud and broker integrations (AWS IoT, Azure IoT Hub, Kafka, RabbitMQ, Pub/Sub, Pulsar); data converters, Rule Engine, Calculated Fields, Alarm Rules.\nTriage community (GitHub Issues) and customer bugs with Support and CSM; close tenant-isolation, RBAC, SSO/2FA and load risks.\nAdjacent: mobile app (Flutter, iOS/Android), about 7% of test cases - you organize its testing, not run it by hand.Nice to have\n- IoT/embedded: MQTT, CoAP, LwM2M, LoRaWAN, OPC-UA, Modbus; real devices, OTA, simulators, IoT platforms.\n- Security testing: OWASP API Top 10, tenant isolation, RBAC/SSO/2FA.\n- Kubernetes; PostgreSQL, Cassandra or TimescaleDB, Redis/Valkey.\n- AI tools for test generation and failure analysis; mobile testing (Appium, Flutter integration tests).\n- Open-source contributions or community experience (GitHub Issues). IoT is a plus, not a must. Devices, firmware, OTA or IoT platforms on your CV speed up your start; none yet? We will teach you - simulators and a team that tests this daily are here. Not a match on every line? Apply anyway: API and integration depth and the drive to lead beat a full checklist.","description_format":"text","description_chars":4517,"description_truncated":false,"requirements":{"experience_years_min":5,"management_years_min":1,"team_size_min":3,"manages_managers":false,"education":null,"security_clearance":false,"languages":[{"language":"Ukrainian","level":"Advanced (C1)","optional":false},{"language":"English","level":"Upper-Intermediate (B2)","optional":false}]},"benefits":[],"hiring_locations":[],"hiring_excludes":[],"relocation_offered":false,"industries":["IoT Platforms & Solutions"],"lifecycle":[{"event":"open","at":"2026-10-02T12:06:09Z"}],"visa":[],"liveness":{"score":86,"band":"hot","label":"Hiring now","p_open":1,"p_active":0.862,"p_room":1,"age_days":5,"expected_fill_days":20,"reasons":["conf:1","velocity","win:early"],"computed_at":"2026-10-08T05:49:30Z"},"pay":null,"html_url":"https://alion.io/job/thingsboard-qa-team-lead","json_url":"https://alion.io/job/thingsboard-qa-team-lead.json","meta":{"generated_at":"2026-10-09T01:02:47Z","cache_seconds":300,"methodology":"https://alion.io/methodology","terms":"https://alion.io/terms","contact":"https://alion.io/contact","api":"https://alion.io/developers","about":"Alion is a live layer of people, companies and AI agents: who they are, whether they are real and active right now, what they do and how to work with them, readable by people and by agents and paid per call.","catalog":"https://alion.io/catalog.json","usage":{"tier":"crawler","counted_by":"address","units_charged":1,"used_today":1672,"day_limit":5000,"remaining_today":3328,"minute_limit":60,"resets_at":"2026-10-10T00:00:00Z"}},"offers":[{"id":"company.slices","title":"One company in depth, by slice","status":"live","price":{"credits":0.02,"usd":0.002,"plus_per_slice":{"credits":0.05,"usd":0.005}},"unit":"per company, plus each slice with data","note":"the employer in depth","call":{"mcp_tool":"get_company","arguments":{"id":1859652},"rest":"https://alion.io/mcp/rest/get_company?id=1859652"},"human":"https://alion.io/catalog?offer=company.slices&for=job%2Fthingsboard-qa-team-lead"},{"id":"market.stats","title":"A market slice: pay, demand and time to fill","status":"live","price":{"credits":1,"usd":0.1},"unit":"per slice","note":"pay, demand and time to fill for this role and place","call":{"mcp_tool":"market_stats"},"human":"https://alion.io/catalog?offer=market.stats&for=job%2Fthingsboard-qa-team-lead"},{"id":"job.search","title":"Open jobs by role, technology, place, pay and visa","status":"live","price":{"credits":0.02,"usd":0.002},"unit":"per posting in a list","note":"similar open postings","call":{"mcp_tool":"search_jobs"},"human":"https://alion.io/catalog?offer=job.search&for=job%2Fthingsboard-qa-team-lead"},{"id":"company.verify","title":"Is this company real and active right now","status":"pilot","price":null,"unit":"per company","request":{"url":"https://alion.io/catalog/request","method":"POST","body":"{\"offer\": \"company.verify\", \"for\": \"job/thingsboard-qa-team-lead\", \"note\": \"what you need it for\"}"},"human":"https://alion.io/catalog?offer=company.verify&for=job%2Fthingsboard-qa-team-lead"}]}