{"company":{"id":3795,"name":"Purplle","domain":"purplle.com","url":"https://alion.io/company/purplle"},"answer":"Purplle builds mostly with Go, Node JS, JavaScript, SQL. Its stack also includes GCP, Kubernetes, MySQL, Redis. GCP is named in 9 of the 14 job postings Purplle published in the last 12 months (64%). Counted by Alion from the job postings of Purplle, updated Oct 13, 2026.","window_days":365,"postings_analysed":14,"open_postings":9,"technologies_in_use":69,"modernity_score":85,"ai_adoption":true,"technologies":[{"name":"GCP","layer":"cloud","postings":9,"share":0.6429,"required":9,"open_postings":6,"first_seen":"2026-07-23","last_seen":"2026-09-15","median_stated_pay_usd":null},{"name":"Kubernetes","layer":"cloud","postings":9,"share":0.6429,"required":9,"open_postings":6,"first_seen":"2026-07-23","last_seen":"2026-09-15","median_stated_pay_usd":null},{"name":"Apache Kafka","layer":"cloud","postings":8,"share":0.5714,"required":8,"open_postings":6,"first_seen":"2026-07-23","last_seen":"2026-09-15","median_stated_pay_usd":null},{"name":"Claude","layer":"ai","postings":8,"share":0.5714,"required":8,"open_postings":6,"first_seen":"2026-07-31","last_seen":"2026-09-15","median_stated_pay_usd":null},{"name":"Cursor","layer":"tools","postings":8,"share":0.5714,"required":8,"open_postings":6,"first_seen":"2026-07-31","last_seen":"2026-09-15","median_stated_pay_usd":null},{"name":"Go","layer":"languages","postings":8,"share":0.5714,"required":8,"open_postings":6,"first_seen":"2026-07-23","last_seen":"2026-09-15","median_stated_pay_usd":null},{"name":"MySQL","layer":"data","postings":8,"share":0.5714,"required":8,"open_postings":6,"first_seen":"2026-07-23","last_seen":"2026-09-15","median_stated_pay_usd":null},{"name":"Node JS","layer":"languages","postings":8,"share":0.5714,"required":8,"open_postings":6,"first_seen":"2026-07-23","last_seen":"2026-09-15","median_stated_pay_usd":null},{"name":"Redis","layer":"data","postings":8,"share":0.5714,"required":8,"open_postings":6,"first_seen":"2026-07-23","last_seen":"2026-09-15","median_stated_pay_usd":null},{"name":"JavaScript","layer":"languages","postings":8,"share":0.5714,"required":2,"open_postings":6,"first_seen":"2026-07-23","last_seen":"2026-09-15","median_stated_pay_usd":null},{"name":"Copilot","layer":"tools","postings":7,"share":0.5,"required":7,"open_postings":6,"first_seen":"2026-08-14","last_seen":"2026-09-15","median_stated_pay_usd":null},{"name":"AWS","layer":"cloud","postings":7,"share":0.5,"required":6,"open_postings":4,"first_seen":"2026-07-23","last_seen":"2026-09-04","median_stated_pay_usd":null},{"name":"Nest.JS","layer":"frameworks","postings":6,"share":0.4286,"required":6,"open_postings":6,"first_seen":"2026-09-01","last_seen":"2026-09-15","median_stated_pay_usd":null},{"name":"Express","layer":"frameworks","postings":5,"share":0.3571,"required":5,"open_postings":4,"first_seen":"2026-07-23","last_seen":"2026-09-04","median_stated_pay_usd":null},{"name":"Docker","layer":"tools","postings":5,"share":0.3571,"required":4,"open_postings":4,"first_seen":"2026-08-14","last_seen":"2026-09-04","median_stated_pay_usd":null},{"name":"SQL","layer":"languages","postings":4,"share":0.2857,"required":4,"open_postings":2,"first_seen":"2026-07-22","last_seen":"2026-09-06","median_stated_pay_usd":null},{"name":"CI/CD","layer":"practices","postings":3,"share":0.2143,"required":3,"open_postings":2,"first_seen":"2026-07-31","last_seen":"2026-09-01","median_stated_pay_usd":null},{"name":"Aerospike","layer":"data","postings":3,"share":0.2143,"required":2,"open_postings":3,"first_seen":"2026-09-01","last_seen":"2026-09-04","median_stated_pay_usd":null},{"name":"ElasticSearch","layer":"data","postings":3,"share":0.2143,"required":2,"open_postings":3,"first_seen":"2026-09-01","last_seen":"2026-09-04","median_stated_pay_usd":null},{"name":"Grafana","layer":"cloud","postings":3,"share":0.2143,"required":2,"open_postings":3,"first_seen":"2026-09-01","last_seen":"2026-09-04","median_stated_pay_usd":null},{"name":"OpenTelemetry","layer":"frameworks","postings":3,"share":0.2143,"required":2,"open_postings":3,"first_seen":"2026-09-01","last_seen":"2026-09-04","median_stated_pay_usd":null},{"name":"Prometheus","layer":"tools","postings":3,"share":0.2143,"required":2,"open_postings":3,"first_seen":"2026-09-01","last_seen":"2026-09-04","median_stated_pay_usd":null},{"name":"AI Agents","layer":"practices","postings":2,"share":0.1429,"required":2,"open_postings":2,"first_seen":"2026-09-01","last_seen":"2026-09-01","median_stated_pay_usd":null},{"name":"LLM","layer":"ai","postings":2,"share":0.1429,"required":2,"open_postings":1,"first_seen":"2026-08-14","last_seen":"2026-09-06","median_stated_pay_usd":null},{"name":"PHP","layer":"languages","postings":2,"share":0.1429,"required":2,"open_postings":0,"first_seen":"2026-07-23","last_seen":"2026-07-30","median_stated_pay_usd":null},{"name":"Self-Healing","layer":"practices","postings":2,"share":0.1429,"required":2,"open_postings":1,"first_seen":"2026-08-14","last_seen":"2026-09-01","median_stated_pay_usd":null},{"name":"Swift","layer":"languages","postings":2,"share":0.1429,"required":2,"open_postings":1,"first_seen":"2026-07-31","last_seen":"2026-09-01","median_stated_pay_usd":null},{"name":"UIKit","layer":"frameworks","postings":2,"share":0.1429,"required":2,"open_postings":1,"first_seen":"2026-07-31","last_seen":"2026-09-01","median_stated_pay_usd":null},{"name":"GitHub","layer":"cloud","postings":2,"share":0.1429,"required":1,"open_postings":0,"first_seen":"2026-07-31","last_seen":"2026-08-14","median_stated_pay_usd":null},{"name":"A/B Testing","layer":"practices","postings":1,"share":0.0714,"required":1,"open_postings":0,"first_seen":"2026-08-14","last_seen":"2026-08-14","median_stated_pay_usd":null},{"name":"Airflow","layer":"cloud","postings":1,"share":0.0714,"required":1,"open_postings":0,"first_seen":"2026-08-14","last_seen":"2026-08-14","median_stated_pay_usd":null},{"name":"Alamofire","layer":"frameworks","postings":1,"share":0.0714,"required":1,"open_postings":0,"first_seen":"2026-07-31","last_seen":"2026-07-31","median_stated_pay_usd":null},{"name":"Bitrise","layer":"tools","postings":1,"share":0.0714,"required":1,"open_postings":0,"first_seen":"2026-07-31","last_seen":"2026-07-31","median_stated_pay_usd":null},{"name":"Clean Architecture","layer":"practices","postings":1,"share":0.0714,"required":1,"open_postings":0,"first_seen":"2026-07-31","last_seen":"2026-07-31","median_stated_pay_usd":null},{"name":"Crashlytics","layer":"cloud","postings":1,"share":0.0714,"required":1,"open_postings":0,"first_seen":"2026-07-31","last_seen":"2026-07-31","median_stated_pay_usd":null},{"name":"Databricks","layer":"cloud","postings":1,"share":0.0714,"required":1,"open_postings":0,"first_seen":"2026-08-14","last_seen":"2026-08-14","median_stated_pay_usd":null},{"name":"Embeddings","layer":"practices","postings":1,"share":0.0714,"required":1,"open_postings":0,"first_seen":"2026-08-14","last_seen":"2026-08-14","median_stated_pay_usd":null},{"name":"Feast","layer":"frameworks","postings":1,"share":0.0714,"required":1,"open_postings":0,"first_seen":"2026-08-14","last_seen":"2026-08-14","median_stated_pay_usd":null},{"name":"Feature Store","layer":"practices","postings":1,"share":0.0714,"required":1,"open_postings":0,"first_seen":"2026-08-14","last_seen":"2026-08-14","median_stated_pay_usd":null},{"name":"Firebase","layer":"cloud","postings":1,"share":0.0714,"required":1,"open_postings":0,"first_seen":"2026-07-31","last_seen":"2026-07-31","median_stated_pay_usd":null},{"name":"GitHub Actions","layer":"cloud","postings":1,"share":0.0714,"required":1,"open_postings":0,"first_seen":"2026-07-31","last_seen":"2026-07-31","median_stated_pay_usd":null},{"name":"Google BigQuery","layer":"data","postings":1,"share":0.0714,"required":1,"open_postings":0,"first_seen":"2026-08-14","last_seen":"2026-08-14","median_stated_pay_usd":null},{"name":"JMeter","layer":"tools","postings":1,"share":0.0714,"required":1,"open_postings":0,"first_seen":"2026-07-22","last_seen":"2026-07-22","median_stated_pay_usd":null},{"name":"Jenkins","layer":"tools","postings":1,"share":0.0714,"required":1,"open_postings":0,"first_seen":"2026-07-31","last_seen":"2026-07-31","median_stated_pay_usd":null},{"name":"Kubeflow","layer":"cloud","postings":1,"share":0.0714,"required":1,"open_postings":0,"first_seen":"2026-08-14","last_seen":"2026-08-14","median_stated_pay_usd":null},{"name":"LLM Guardrails","layer":"practices","postings":1,"share":0.0714,"required":1,"open_postings":0,"first_seen":"2026-08-14","last_seen":"2026-08-14","median_stated_pay_usd":null},{"name":"LightGBM","layer":"frameworks","postings":1,"share":0.0714,"required":1,"open_postings":0,"first_seen":"2026-08-14","last_seen":"2026-08-14","median_stated_pay_usd":null},{"name":"MLFlow","layer":"cloud","postings":1,"share":0.0714,"required":1,"open_postings":0,"first_seen":"2026-08-14","last_seen":"2026-08-14","median_stated_pay_usd":null},{"name":"MVVM","layer":"practices","postings":1,"share":0.0714,"required":1,"open_postings":0,"first_seen":"2026-07-31","last_seen":"2026-07-31","median_stated_pay_usd":null},{"name":"Next.js","layer":"frameworks","postings":1,"share":0.0714,"required":1,"open_postings":1,"first_seen":"2026-09-15","last_seen":"2026-09-15","median_stated_pay_usd":null},{"name":"OpenAI Codex","layer":"tools","postings":1,"share":0.0714,"required":1,"open_postings":0,"first_seen":"2026-07-31","last_seen":"2026-07-31","median_stated_pay_usd":null},{"name":"PyTorch","layer":"frameworks","postings":1,"share":0.0714,"required":1,"open_postings":0,"first_seen":"2026-08-14","last_seen":"2026-08-14","median_stated_pay_usd":null},{"name":"Python","layer":"languages","postings":1,"share":0.0714,"required":1,"open_postings":0,"first_seen":"2026-08-14","last_seen":"2026-08-14","median_stated_pay_usd":null},{"name":"RAG","layer":"practices","postings":1,"share":0.0714,"required":1,"open_postings":0,"first_seen":"2026-08-14","last_seen":"2026-08-14","median_stated_pay_usd":null},{"name":"Rest API","layer":"tools","postings":1,"share":0.0714,"required":1,"open_postings":0,"first_seen":"2026-07-31","last_seen":"2026-07-31","median_stated_pay_usd":null},{"name":"Scikit-learn","layer":"frameworks","postings":1,"share":0.0714,"required":1,"open_postings":0,"first_seen":"2026-08-14","last_seen":"2026-08-14","median_stated_pay_usd":null},{"name":"Semantic Search","layer":"practices","postings":1,"share":0.0714,"required":1,"open_postings":0,"first_seen":"2026-08-14","last_seen":"2026-08-14","median_stated_pay_usd":null},{"name":"Semantic Search","layer":"practices","postings":1,"share":0.0714,"required":1,"open_postings":0,"first_seen":"2026-08-14","last_seen":"2026-08-14","median_stated_pay_usd":null},{"name":"Spark","layer":"cloud","postings":1,"share":0.0714,"required":1,"open_postings":0,"first_seen":"2026-08-14","last_seen":"2026-08-14","median_stated_pay_usd":null},{"name":"Statsmodels","layer":"frameworks","postings":1,"share":0.0714,"required":1,"open_postings":0,"first_seen":"2026-08-14","last_seen":"2026-08-14","median_stated_pay_usd":null},{"name":"SwiftUI","layer":"frameworks","postings":1,"share":0.0714,"required":1,"open_postings":0,"first_seen":"2026-07-31","last_seen":"2026-07-31","median_stated_pay_usd":null},{"name":"Tableau","layer":"cloud","postings":1,"share":0.0714,"required":1,"open_postings":1,"first_seen":"2026-09-06","last_seen":"2026-09-06","median_stated_pay_usd":null},{"name":"TensorFlow","layer":"frameworks","postings":1,"share":0.0714,"required":1,"open_postings":0,"first_seen":"2026-08-14","last_seen":"2026-08-14","median_stated_pay_usd":null},{"name":"Terraform","layer":"tools","postings":1,"share":0.0714,"required":1,"open_postings":0,"first_seen":"2026-08-14","last_seen":"2026-08-14","median_stated_pay_usd":null},{"name":"Vertex AI","layer":"cloud","postings":1,"share":0.0714,"required":1,"open_postings":0,"first_seen":"2026-08-14","last_seen":"2026-08-14","median_stated_pay_usd":null},{"name":"XGBoost","layer":"frameworks","postings":1,"share":0.0714,"required":1,"open_postings":0,"first_seen":"2026-08-14","last_seen":"2026-08-14","median_stated_pay_usd":null},{"name":"dbt","layer":"tools","postings":1,"share":0.0714,"required":1,"open_postings":0,"first_seen":"2026-08-14","last_seen":"2026-08-14","median_stated_pay_usd":null},{"name":"iOS SDK","layer":"cloud","postings":1,"share":0.0714,"required":1,"open_postings":0,"first_seen":"2026-07-31","last_seen":"2026-07-31","median_stated_pay_usd":null},{"name":"React.js","layer":"frameworks","postings":1,"share":0.0714,"required":0,"open_postings":1,"first_seen":"2026-09-15","last_seen":"2026-09-15","median_stated_pay_usd":null}],"own_products":[],"changes":{"first_appeared":[],"rising":[],"falling":[],"not_seen_180d":[]},"similar_stacks":[{"name":"Supercast","url":"https://alion.io/company/supercast","shared_technologies":56},{"name":"Reddit","url":"https://alion.io/company/reddit/technologies","shared_technologies":54},{"name":"Toters","url":"https://alion.io/company/toters-delivery/technologies","shared_technologies":49},{"name":"Qentelli","url":"https://alion.io/company/qentelli/technologies","shared_technologies":51},{"name":"Swiggy","url":"https://alion.io/company/swiggy/technologies","shared_technologies":49},{"name":"Robots & Pencils","url":"https://alion.io/company/robots-and-pencils/technologies","shared_technologies":53},{"name":"Voodoo","url":"https://alion.io/company/voodoo/technologies","shared_technologies":48},{"name":"Match Group","url":"https://alion.io/company/match-group/technologies","shared_technologies":51}],"html_url":"https://alion.io/company/purplle/technologies","json_url":"https://alion.io/company/purplle/technologies.json","license":"CC BY-SA 4.0","meta":{"source":"Alion","built_at":"2026-10-13T19:32:40Z","generated_at":"2026-10-13T23:14:29Z"}}