{"company":{"id":6377,"name":"Ruby Labs","domain":"rubylabs.com","url":"https://alion.io/company/rubylabs"},"answer":"Ruby Labs builds mostly with Ruby, JavaScript, SQL, TypeScript. Its stack also includes GitHub Actions, React.js, GitHub, PostgreSQL. Ruby is named in 48 of the 48 job postings Ruby Labs published in the last 12 months (100%). Counted by Alion from the job postings of Ruby Labs, updated Sep 28, 2026.","window_days":365,"postings_analysed":48,"open_postings":18,"technologies_in_use":140,"modernity_score":84,"ai_adoption":true,"technologies":[{"name":"Ruby","layer":"languages","postings":48,"share":1,"required":48,"open_postings":18,"first_seen":"2026-05-14","last_seen":"2026-09-21","median_stated_pay_usd":null},{"name":"A/B Testing","layer":"practices","postings":17,"share":0.3542,"required":16,"open_postings":7,"first_seen":"2026-05-14","last_seen":"2026-09-18","median_stated_pay_usd":null},{"name":"Claude","layer":"ai","postings":11,"share":0.2292,"required":11,"open_postings":3,"first_seen":"2026-07-08","last_seen":"2026-09-01","median_stated_pay_usd":null},{"name":"CI/CD","layer":"practices","postings":10,"share":0.2083,"required":9,"open_postings":3,"first_seen":"2026-07-03","last_seen":"2026-09-18","median_stated_pay_usd":null},{"name":"JavaScript","layer":"languages","postings":9,"share":0.1875,"required":4,"open_postings":5,"first_seen":"2026-07-03","last_seen":"2026-09-21","median_stated_pay_usd":null},{"name":"SQL","layer":"languages","postings":8,"share":0.1667,"required":8,"open_postings":7,"first_seen":"2026-05-14","last_seen":"2026-09-18","median_stated_pay_usd":null},{"name":"GitHub Actions","layer":"cloud","postings":7,"share":0.1458,"required":6,"open_postings":1,"first_seen":"2026-07-07","last_seen":"2026-09-18","median_stated_pay_usd":null},{"name":"TypeScript","layer":"languages","postings":7,"share":0.1458,"required":6,"open_postings":4,"first_seen":"2026-07-19","last_seen":"2026-09-21","median_stated_pay_usd":null},{"name":"React.js","layer":"frameworks","postings":7,"share":0.1458,"required":5,"open_postings":3,"first_seen":"2026-07-03","last_seen":"2026-09-21","median_stated_pay_usd":null},{"name":"Python","layer":"languages","postings":7,"share":0.1458,"required":4,"open_postings":5,"first_seen":"2026-05-14","last_seen":"2026-08-20","median_stated_pay_usd":null},{"name":"Bitrise","layer":"tools","postings":6,"share":0.125,"required":6,"open_postings":0,"first_seen":"2026-07-07","last_seen":"2026-08-15","median_stated_pay_usd":null},{"name":"GitHub","layer":"cloud","postings":6,"share":0.125,"required":6,"open_postings":0,"first_seen":"2026-07-07","last_seen":"2026-08-15","median_stated_pay_usd":null},{"name":"Modularization","layer":"practices","postings":6,"share":0.125,"required":6,"open_postings":0,"first_seen":"2026-07-07","last_seen":"2026-08-15","median_stated_pay_usd":null},{"name":"Next.js","layer":"frameworks","postings":6,"share":0.125,"required":5,"open_postings":3,"first_seen":"2026-07-19","last_seen":"2026-09-21","median_stated_pay_usd":null},{"name":"PostgreSQL","layer":"data","postings":6,"share":0.125,"required":5,"open_postings":2,"first_seen":"2026-06-12","last_seen":"2026-09-21","median_stated_pay_usd":null},{"name":"Git","layer":"tools","postings":6,"share":0.125,"required":4,"open_postings":2,"first_seen":"2026-07-07","last_seen":"2026-09-21","median_stated_pay_usd":null},{"name":"ClickHouse","layer":"data","postings":6,"share":0.125,"required":3,"open_postings":3,"first_seen":"2026-06-12","last_seen":"2026-08-25","median_stated_pay_usd":null},{"name":"Gitflow","layer":"practices","postings":5,"share":0.1042,"required":5,"open_postings":1,"first_seen":"2026-07-07","last_seen":"2026-09-21","median_stated_pay_usd":null},{"name":"State Management","layer":"practices","postings":5,"share":0.1042,"required":5,"open_postings":0,"first_seen":"2026-07-03","last_seen":"2026-08-15","median_stated_pay_usd":null},{"name":"Tableau","layer":"cloud","postings":5,"share":0.1042,"required":5,"open_postings":5,"first_seen":"2026-05-14","last_seen":"2026-08-20","median_stated_pay_usd":null},{"name":"Clean Architecture","layer":"practices","postings":4,"share":0.0833,"required":4,"open_postings":0,"first_seen":"2026-07-07","last_seen":"2026-08-15","median_stated_pay_usd":null},{"name":"Dependency Injection","layer":"practices","postings":4,"share":0.0833,"required":4,"open_postings":0,"first_seen":"2026-07-07","last_seen":"2026-08-15","median_stated_pay_usd":null},{"name":"MVVM","layer":"practices","postings":4,"share":0.0833,"required":4,"open_postings":0,"first_seen":"2026-07-07","last_seen":"2026-08-15","median_stated_pay_usd":null},{"name":"RevenueCat","layer":"cloud","postings":4,"share":0.0833,"required":4,"open_postings":0,"first_seen":"2026-07-07","last_seen":"2026-08-15","median_stated_pay_usd":null},{"name":"Claude Code","layer":"tools","postings":4,"share":0.0833,"required":3,"open_postings":2,"first_seen":"2026-07-19","last_seen":"2026-09-21","median_stated_pay_usd":null},{"name":"Cursor","layer":"tools","postings":4,"share":0.0833,"required":3,"open_postings":1,"first_seen":"2026-07-19","last_seen":"2026-09-21","median_stated_pay_usd":null},{"name":"Java","layer":"languages","postings":4,"share":0.0833,"required":3,"open_postings":0,"first_seen":"2026-07-07","last_seen":"2026-08-04","median_stated_pay_usd":null},{"name":"Node JS","layer":"languages","postings":4,"share":0.0833,"required":3,"open_postings":2,"first_seen":"2026-07-19","last_seen":"2026-09-21","median_stated_pay_usd":null},{"name":"Sentry","layer":"cloud","postings":4,"share":0.0833,"required":2,"open_postings":2,"first_seen":"2026-07-03","last_seen":"2026-09-18","median_stated_pay_usd":null},{"name":"BigQuery","layer":"data","postings":4,"share":0.0833,"required":1,"open_postings":4,"first_seen":"2026-05-14","last_seen":"2026-08-20","median_stated_pay_usd":null},{"name":"Google BigQuery","layer":"data","postings":4,"share":0.0833,"required":1,"open_postings":4,"first_seen":"2026-05-14","last_seen":"2026-08-20","median_stated_pay_usd":null},{"name":"AI Agents","layer":"practices","postings":3,"share":0.0625,"required":3,"open_postings":0,"first_seen":"2026-07-15","last_seen":"2026-08-21","median_stated_pay_usd":null},{"name":"AWS","layer":"cloud","postings":3,"share":0.0625,"required":3,"open_postings":0,"first_seen":"2026-06-12","last_seen":"2026-08-25","median_stated_pay_usd":null},{"name":"ChatGPT","layer":"ai","postings":3,"share":0.0625,"required":3,"open_postings":0,"first_seen":"2026-07-08","last_seen":"2026-09-01","median_stated_pay_usd":null},{"name":"Espresso","layer":"frameworks","postings":3,"share":0.0625,"required":3,"open_postings":0,"first_seen":"2026-07-07","last_seen":"2026-08-04","median_stated_pay_usd":null},{"name":"Fastlane","layer":"tools","postings":3,"share":0.0625,"required":3,"open_postings":0,"first_seen":"2026-07-07","last_seen":"2026-08-15","median_stated_pay_usd":null},{"name":"GitLab","layer":"cloud","postings":3,"share":0.0625,"required":3,"open_postings":0,"first_seen":"2026-07-07","last_seen":"2026-08-04","median_stated_pay_usd":null},{"name":"GitLab CI","layer":"cloud","postings":3,"share":0.0625,"required":3,"open_postings":0,"first_seen":"2026-07-07","last_seen":"2026-08-04","median_stated_pay_usd":null},{"name":"Google Play Billing","layer":"tools","postings":3,"share":0.0625,"required":3,"open_postings":0,"first_seen":"2026-07-07","last_seen":"2026-08-04","median_stated_pay_usd":null},{"name":"Gradle","layer":"tools","postings":3,"share":0.0625,"required":3,"open_postings":0,"first_seen":"2026-07-07","last_seen":"2026-08-04","median_stated_pay_usd":null},{"name":"Kotlin","layer":"languages","postings":3,"share":0.0625,"required":3,"open_postings":0,"first_seen":"2026-07-07","last_seen":"2026-08-04","median_stated_pay_usd":null},{"name":"Kotlin Coroutines","layer":"other","postings":3,"share":0.0625,"required":3,"open_postings":0,"first_seen":"2026-07-07","last_seen":"2026-08-04","median_stated_pay_usd":null},{"name":"LLM","layer":"ai","postings":3,"share":0.0625,"required":3,"open_postings":0,"first_seen":"2026-07-15","last_seen":"2026-08-21","median_stated_pay_usd":null},{"name":"Model Context Protocol","layer":"tools","postings":3,"share":0.0625,"required":3,"open_postings":1,"first_seen":"2026-07-19","last_seen":"2026-09-21","median_stated_pay_usd":null},{"name":"OpenSearch","layer":"data","postings":3,"share":0.0625,"required":3,"open_postings":0,"first_seen":"2026-06-12","last_seen":"2026-08-25","median_stated_pay_usd":null},{"name":"SPM","layer":"tools","postings":3,"share":0.0625,"required":3,"open_postings":0,"first_seen":"2026-07-07","last_seen":"2026-08-15","median_stated_pay_usd":null},{"name":"StoreKit","layer":"frameworks","postings":3,"share":0.0625,"required":3,"open_postings":0,"first_seen":"2026-07-07","last_seen":"2026-08-15","median_stated_pay_usd":null},{"name":"Swift","layer":"languages","postings":3,"share":0.0625,"required":3,"open_postings":0,"first_seen":"2026-07-07","last_seen":"2026-08-15","median_stated_pay_usd":null},{"name":"Swift Concurrency","layer":"other","postings":3,"share":0.0625,"required":3,"open_postings":0,"first_seen":"2026-07-07","last_seen":"2026-08-15","median_stated_pay_usd":null},{"name":"Tailwind CSS","layer":"frameworks","postings":3,"share":0.0625,"required":3,"open_postings":2,"first_seen":"2026-08-19","last_seen":"2026-09-21","median_stated_pay_usd":null},{"name":"dbt","layer":"tools","postings":3,"share":0.0625,"required":1,"open_postings":3,"first_seen":"2026-07-07","last_seen":"2026-08-20","median_stated_pay_usd":null},{"name":"Agentic Workflows","layer":"practices","postings":2,"share":0.0417,"required":2,"open_postings":1,"first_seen":"2026-07-10","last_seen":"2026-07-15","median_stated_pay_usd":null},{"name":"Amazon Aurora","layer":"data","postings":2,"share":0.0417,"required":2,"open_postings":0,"first_seen":"2026-06-12","last_seen":"2026-08-25","median_stated_pay_usd":null},{"name":"Combine","layer":"frameworks","postings":2,"share":0.0417,"required":2,"open_postings":0,"first_seen":"2026-08-04","last_seen":"2026-08-15","median_stated_pay_usd":null},{"name":"Dagger","layer":"frameworks","postings":2,"share":0.0417,"required":2,"open_postings":0,"first_seen":"2026-07-07","last_seen":"2026-08-04","median_stated_pay_usd":null},{"name":"DataStore","layer":"frameworks","postings":2,"share":0.0417,"required":2,"open_postings":0,"first_seen":"2026-07-07","last_seen":"2026-08-04","median_stated_pay_usd":null},{"name":"Function Calling","layer":"practices","postings":2,"share":0.0417,"required":2,"open_postings":0,"first_seen":"2026-07-19","last_seen":"2026-08-21","median_stated_pay_usd":null},{"name":"Gemini","layer":"ai","postings":2,"share":0.0417,"required":2,"open_postings":0,"first_seen":"2026-08-12","last_seen":"2026-09-01","median_stated_pay_usd":null},{"name":"Hilt","layer":"frameworks","postings":2,"share":0.0417,"required":2,"open_postings":0,"first_seen":"2026-07-07","last_seen":"2026-08-04","median_stated_pay_usd":null},{"name":"JUnit","layer":"frameworks","postings":2,"share":0.0417,"required":2,"open_postings":0,"first_seen":"2026-07-07","last_seen":"2026-08-04","median_stated_pay_usd":null},{"name":"Jetpack Compose","layer":"frameworks","postings":2,"share":0.0417,"required":2,"open_postings":0,"first_seen":"2026-07-07","last_seen":"2026-08-04","median_stated_pay_usd":null},{"name":"Langfuse","layer":"cloud","postings":2,"share":0.0417,"required":2,"open_postings":0,"first_seen":"2026-07-19","last_seen":"2026-08-21","median_stated_pay_usd":null},{"name":"LeakCanary","layer":"frameworks","postings":2,"share":0.0417,"required":2,"open_postings":0,"first_seen":"2026-07-07","last_seen":"2026-08-04","median_stated_pay_usd":null},{"name":"Looker","layer":"cloud","postings":2,"share":0.0417,"required":2,"open_postings":2,"first_seen":"2026-05-14","last_seen":"2026-07-07","median_stated_pay_usd":null},{"name":"MVI","layer":"practices","postings":2,"share":0.0417,"required":2,"open_postings":0,"first_seen":"2026-07-07","last_seen":"2026-08-04","median_stated_pay_usd":null},{"name":"MockK","layer":"frameworks","postings":2,"share":0.0417,"required":2,"open_postings":0,"first_seen":"2026-07-07","last_seen":"2026-08-04","median_stated_pay_usd":null},{"name":"Playwright","layer":"frameworks","postings":2,"share":0.0417,"required":2,"open_postings":2,"first_seen":"2026-09-18","last_seen":"2026-09-21","median_stated_pay_usd":null},{"name":"Room","layer":"frameworks","postings":2,"share":0.0417,"required":2,"open_postings":0,"first_seen":"2026-07-07","last_seen":"2026-08-04","median_stated_pay_usd":null},{"name":"StateFlow","layer":"other","postings":2,"share":0.0417,"required":2,"open_postings":0,"first_seen":"2026-07-07","last_seen":"2026-08-04","median_stated_pay_usd":null},{"name":"SwiftUI","layer":"frameworks","postings":2,"share":0.0417,"required":2,"open_postings":0,"first_seen":"2026-08-04","last_seen":"2026-08-15","median_stated_pay_usd":null},{"name":"TestFlight","layer":"tools","postings":2,"share":0.0417,"required":2,"open_postings":0,"first_seen":"2026-08-04","last_seen":"2026-08-15","median_stated_pay_usd":null},{"name":"UIKit","layer":"frameworks","postings":2,"share":0.0417,"required":2,"open_postings":0,"first_seen":"2026-08-04","last_seen":"2026-08-15","median_stated_pay_usd":null},{"name":"ViewModel","layer":"frameworks","postings":2,"share":0.0417,"required":2,"open_postings":0,"first_seen":"2026-07-07","last_seen":"2026-08-04","median_stated_pay_usd":null},{"name":"WorkManager","layer":"frameworks","postings":2,"share":0.0417,"required":2,"open_postings":0,"first_seen":"2026-07-07","last_seen":"2026-08-04","median_stated_pay_usd":null},{"name":"XCTest","layer":"frameworks","postings":2,"share":0.0417,"required":2,"open_postings":0,"first_seen":"2026-08-04","last_seen":"2026-08-15","median_stated_pay_usd":null},{"name":"XCUITest","layer":"frameworks","postings":2,"share":0.0417,"required":2,"open_postings":0,"first_seen":"2026-08-04","last_seen":"2026-08-15","median_stated_pay_usd":null},{"name":"Cloudflare","layer":"cloud","postings":2,"share":0.0417,"required":1,"open_postings":1,"first_seen":"2026-07-19","last_seen":"2026-09-21","median_stated_pay_usd":null},{"name":"ETL/ELT","layer":"practices","postings":2,"share":0.0417,"required":1,"open_postings":2,"first_seen":"2026-07-07","last_seen":"2026-08-20","median_stated_pay_usd":null},{"name":"OpenRouter","layer":"tools","postings":2,"share":0.0417,"required":1,"open_postings":0,"first_seen":"2026-07-19","last_seen":"2026-08-21","median_stated_pay_usd":null},{"name":"GCP","layer":"cloud","postings":2,"share":0.0417,"required":0,"open_postings":2,"first_seen":"2026-05-14","last_seen":"2026-08-08","median_stated_pay_usd":null},{"name":"LangSmith","layer":"cloud","postings":2,"share":0.0417,"required":0,"open_postings":0,"first_seen":"2026-07-19","last_seen":"2026-08-21","median_stated_pay_usd":null},{"name":"AVFoundation","layer":"frameworks","postings":1,"share":0.0208,"required":1,"open_postings":1,"first_seen":"2026-09-18","last_seen":"2026-09-18","median_stated_pay_usd":null},{"name":"AWS Lambda","layer":"cloud","postings":1,"share":0.0208,"required":1,"open_postings":0,"first_seen":"2026-07-29","last_seen":"2026-07-29","median_stated_pay_usd":null},{"name":"Amazon CloudWatch","layer":"cloud","postings":1,"share":0.0208,"required":1,"open_postings":0,"first_seen":"2026-07-29","last_seen":"2026-07-29","median_stated_pay_usd":null},{"name":"Amazon ECS","layer":"cloud","postings":1,"share":0.0208,"required":1,"open_postings":0,"first_seen":"2026-07-29","last_seen":"2026-07-29","median_stated_pay_usd":null},{"name":"Amazon EKS","layer":"cloud","postings":1,"share":0.0208,"required":1,"open_postings":0,"first_seen":"2026-07-29","last_seen":"2026-07-29","median_stated_pay_usd":null},{"name":"Amazon S3","layer":"cloud","postings":1,"share":0.0208,"required":1,"open_postings":0,"first_seen":"2026-07-29","last_seen":"2026-07-29","median_stated_pay_usd":null},{"name":"Apollo","layer":"cloud","postings":1,"share":0.0208,"required":1,"open_postings":0,"first_seen":"2026-09-01","last_seen":"2026-09-01","median_stated_pay_usd":null},{"name":"BrowserStack","layer":"cloud","postings":1,"share":0.0208,"required":1,"open_postings":0,"first_seen":"2026-07-08","last_seen":"2026-07-08","median_stated_pay_usd":null},{"name":"C++","layer":"languages","postings":1,"share":0.0208,"required":1,"open_postings":1,"first_seen":"2026-09-18","last_seen":"2026-09-18","median_stated_pay_usd":null},{"name":"CodePush","layer":"frameworks","postings":1,"share":0.0208,"required":1,"open_postings":0,"first_seen":"2026-07-03","last_seen":"2026-07-03","median_stated_pay_usd":null},{"name":"Cypress","layer":"frameworks","postings":1,"share":0.0208,"required":1,"open_postings":1,"first_seen":"2026-09-21","last_seen":"2026-09-21","median_stated_pay_usd":null},{"name":"ElasticSearch","layer":"data","postings":1,"share":0.0208,"required":1,"open_postings":0,"first_seen":"2026-07-29","last_seen":"2026-07-29","median_stated_pay_usd":null},{"name":"Electron","layer":"frameworks","postings":1,"share":0.0208,"required":1,"open_postings":1,"first_seen":"2026-09-18","last_seen":"2026-09-18","median_stated_pay_usd":null},{"name":"Fastify","layer":"frameworks","postings":1,"share":0.0208,"required":1,"open_postings":1,"first_seen":"2026-09-21","last_seen":"2026-09-21","median_stated_pay_usd":null},{"name":"Figma","layer":"cloud","postings":1,"share":0.0208,"required":1,"open_postings":1,"first_seen":"2026-09-01","last_seen":"2026-09-01","median_stated_pay_usd":null},{"name":"Framer","layer":"cloud","postings":1,"share":0.0208,"required":1,"open_postings":0,"first_seen":"2026-09-01","last_seen":"2026-09-01","median_stated_pay_usd":null},{"name":"IAM","layer":"practices","postings":1,"share":0.0208,"required":1,"open_postings":0,"first_seen":"2026-07-29","last_seen":"2026-07-29","median_stated_pay_usd":null},{"name":"Jest","layer":"frameworks","postings":1,"share":0.0208,"required":1,"open_postings":1,"first_seen":"2026-09-21","last_seen":"2026-09-21","median_stated_pay_usd":null},{"name":"Kubernetes","layer":"cloud","postings":1,"share":0.0208,"required":1,"open_postings":0,"first_seen":"2026-07-29","last_seen":"2026-07-29","median_stated_pay_usd":null},{"name":"LangChain","layer":"frameworks","postings":1,"share":0.0208,"required":1,"open_postings":0,"first_seen":"2026-07-19","last_seen":"2026-07-19","median_stated_pay_usd":null},{"name":"LlamaIndex","layer":"frameworks","postings":1,"share":0.0208,"required":1,"open_postings":0,"first_seen":"2026-07-19","last_seen":"2026-07-19","median_stated_pay_usd":null},{"name":"Magic","layer":"tools","postings":1,"share":0.0208,"required":1,"open_postings":0,"first_seen":"2026-07-08","last_seen":"2026-07-08","median_stated_pay_usd":null},{"name":"Material UI","layer":"frameworks","postings":1,"share":0.0208,"required":1,"open_postings":1,"first_seen":"2026-09-21","last_seen":"2026-09-21","median_stated_pay_usd":null},{"name":"Objective-C","layer":"languages","postings":1,"share":0.0208,"required":1,"open_postings":1,"first_seen":"2026-09-18","last_seen":"2026-09-18","median_stated_pay_usd":null},{"name":"OpenTelemetry","layer":"frameworks","postings":1,"share":0.0208,"required":1,"open_postings":0,"first_seen":"2026-07-03","last_seen":"2026-07-03","median_stated_pay_usd":null},{"name":"Perplexity","layer":"cloud","postings":1,"share":0.0208,"required":1,"open_postings":0,"first_seen":"2026-09-01","last_seen":"2026-09-01","median_stated_pay_usd":null},{"name":"Postman","layer":"cloud","postings":1,"share":0.0208,"required":1,"open_postings":1,"first_seen":"2026-09-18","last_seen":"2026-09-18","median_stated_pay_usd":null},{"name":"Power BI","layer":"cloud","postings":1,"share":0.0208,"required":1,"open_postings":1,"first_seen":"2026-07-07","last_seen":"2026-07-07","median_stated_pay_usd":null},{"name":"ProGuard","layer":"tools","postings":1,"share":0.0208,"required":1,"open_postings":0,"first_seen":"2026-07-07","last_seen":"2026-07-07","median_stated_pay_usd":null},{"name":"Prompt Engineering","layer":"practices","postings":1,"share":0.0208,"required":1,"open_postings":0,"first_seen":"2026-07-19","last_seen":"2026-07-19","median_stated_pay_usd":null},{"name":"React Hook Form","layer":"frameworks","postings":1,"share":0.0208,"required":1,"open_postings":1,"first_seen":"2026-09-21","last_seen":"2026-09-21","median_stated_pay_usd":null},{"name":"React Native","layer":"frameworks","postings":1,"share":0.0208,"required":1,"open_postings":0,"first_seen":"2026-07-03","last_seen":"2026-07-03","median_stated_pay_usd":null},{"name":"Redis","layer":"data","postings":1,"share":0.0208,"required":1,"open_postings":0,"first_seen":"2026-07-19","last_seen":"2026-07-19","median_stated_pay_usd":null},{"name":"Rest API","layer":"tools","postings":1,"share":0.0208,"required":1,"open_postings":1,"first_seen":"2026-09-21","last_seen":"2026-09-21","median_stated_pay_usd":null},{"name":"Strapi","layer":"tools","postings":1,"share":0.0208,"required":1,"open_postings":1,"first_seen":"2026-09-21","last_seen":"2026-09-21","median_stated_pay_usd":null},{"name":"Structured Outputs","layer":"practices","postings":1,"share":0.0208,"required":1,"open_postings":0,"first_seen":"2026-08-21","last_seen":"2026-08-21","median_stated_pay_usd":null},{"name":"Vitest","layer":"frameworks","postings":1,"share":0.0208,"required":1,"open_postings":1,"first_seen":"2026-09-21","last_seen":"2026-09-21","median_stated_pay_usd":null},{"name":"Webflow","layer":"cloud","postings":1,"share":0.0208,"required":1,"open_postings":0,"first_seen":"2026-09-01","last_seen":"2026-09-01","median_stated_pay_usd":null},{"name":"Windows","layer":"cloud","postings":1,"share":0.0208,"required":1,"open_postings":1,"first_seen":"2026-09-18","last_seen":"2026-09-18","median_stated_pay_usd":null},{"name":"Zod","layer":"frameworks","postings":1,"share":0.0208,"required":1,"open_postings":1,"first_seen":"2026-09-21","last_seen":"2026-09-21","median_stated_pay_usd":null},{"name":"Zustand","layer":"frameworks","postings":1,"share":0.0208,"required":1,"open_postings":1,"first_seen":"2026-09-21","last_seen":"2026-09-21","median_stated_pay_usd":null},{"name":"shadcn/ui","layer":"frameworks","postings":1,"share":0.0208,"required":1,"open_postings":1,"first_seen":"2026-09-21","last_seen":"2026-09-21","median_stated_pay_usd":null},{"name":"Anthropic","layer":"cloud","postings":1,"share":0.0208,"required":0,"open_postings":0,"first_seen":"2026-07-19","last_seen":"2026-07-19","median_stated_pay_usd":null},{"name":"Azure","layer":"cloud","postings":1,"share":0.0208,"required":0,"open_postings":1,"first_seen":"2026-09-18","last_seen":"2026-09-18","median_stated_pay_usd":null},{"name":"Dagster","layer":"frameworks","postings":1,"share":0.0208,"required":0,"open_postings":1,"first_seen":"2026-08-20","last_seen":"2026-08-20","median_stated_pay_usd":null},{"name":"Fine-tuning","layer":"practices","postings":1,"share":0.0208,"required":0,"open_postings":0,"first_seen":"2026-07-19","last_seen":"2026-07-19","median_stated_pay_usd":null},{"name":"Go","layer":"languages","postings":1,"share":0.0208,"required":0,"open_postings":0,"first_seen":"2026-07-29","last_seen":"2026-07-29","median_stated_pay_usd":null},{"name":"Grafana","layer":"cloud","postings":1,"share":0.0208,"required":0,"open_postings":1,"first_seen":"2026-08-20","last_seen":"2026-08-20","median_stated_pay_usd":null},{"name":"Locust","layer":"tools","postings":1,"share":0.0208,"required":0,"open_postings":1,"first_seen":"2026-09-18","last_seen":"2026-09-18","median_stated_pay_usd":null},{"name":"Multi-Agent Systems","layer":"practices","postings":1,"share":0.0208,"required":0,"open_postings":0,"first_seen":"2026-07-19","last_seen":"2026-07-19","median_stated_pay_usd":null},{"name":"Offline-First","layer":"practices","postings":1,"share":0.0208,"required":0,"open_postings":0,"first_seen":"2026-07-03","last_seen":"2026-07-03","median_stated_pay_usd":null},{"name":"OpenAI","layer":"cloud","postings":1,"share":0.0208,"required":0,"open_postings":0,"first_seen":"2026-07-19","last_seen":"2026-07-19","median_stated_pay_usd":null},{"name":"Prometheus","layer":"tools","postings":1,"share":0.0208,"required":0,"open_postings":1,"first_seen":"2026-08-20","last_seen":"2026-08-20","median_stated_pay_usd":null},{"name":"RAG","layer":"practices","postings":1,"share":0.0208,"required":0,"open_postings":0,"first_seen":"2026-07-19","last_seen":"2026-07-19","median_stated_pay_usd":null},{"name":"Radix UI","layer":"frameworks","postings":1,"share":0.0208,"required":0,"open_postings":1,"first_seen":"2026-09-21","last_seen":"2026-09-21","median_stated_pay_usd":null},{"name":"Terraform","layer":"tools","postings":1,"share":0.0208,"required":0,"open_postings":0,"first_seen":"2026-07-29","last_seen":"2026-07-29","median_stated_pay_usd":null},{"name":"WebSockets","layer":"tools","postings":1,"share":0.0208,"required":0,"open_postings":0,"first_seen":"2026-07-03","last_seen":"2026-07-03","median_stated_pay_usd":null},{"name":"Windsurf","layer":"tools","postings":1,"share":0.0208,"required":0,"open_postings":0,"first_seen":"2026-07-19","last_seen":"2026-07-19","median_stated_pay_usd":null},{"name":"k6","layer":"tools","postings":1,"share":0.0208,"required":0,"open_postings":1,"first_seen":"2026-09-18","last_seen":"2026-09-18","median_stated_pay_usd":null}],"own_products":[],"changes":{"first_appeared":[{"name":"Playwright","first_seen":"2026-09-18"},{"name":"Tailwind CSS","first_seen":"2026-08-19"}],"rising":[],"falling":[],"not_seen_180d":[]},"similar_stacks":[{"name":"Mondia Group","url":"https://alion.io/company/mondiagroup/technologies","shared_technologies":75},{"name":"YAL","url":"https://alion.io/company/yal/technologies","shared_technologies":71},{"name":"Xsolla","url":"https://alion.io/company/xsolla/technologies","shared_technologies":102},{"name":"Freshworks","url":"https://alion.io/company/freshworks/technologies","shared_technologies":91},{"name":"Supercast","url":"https://alion.io/company/supercast","shared_technologies":79},{"name":"Nord Security","url":"https://alion.io/company/nord-security/technologies","shared_technologies":82},{"name":"IDT Corporation","url":"https://alion.io/company/idt/technologies","shared_technologies":78},{"name":"Oxylabs","url":"https://alion.io/company/oxylabs/technologies","shared_technologies":69}],"html_url":"https://alion.io/company/rubylabs/technologies","json_url":"https://alion.io/company/rubylabs/technologies.json","license":"CC BY-SA 4.0","meta":{"source":"Alion","built_at":"2026-09-28T20:45:12Z","generated_at":"2026-09-29T01:20:34Z"}}