{"company":{"id":63100,"name":"XtalPi","domain":"xtalpi.com","url":"https://alion.io/company/xtalpi"},"answer":"XtalPi builds mostly with Python, TypeScript, JavaScript. Its stack also includes Linux, Kubernetes, PostgreSQL, Redis. Python is named in 4 of the 10 job postings XtalPi published in the last 12 months (40%). Counted by Alion from the job postings of XtalPi, updated Oct 21, 2026.","window_days":365,"postings_analysed":10,"open_postings":10,"technologies_in_use":47,"modernity_score":79,"ai_adoption":true,"technologies":[{"name":"Docker","layer":"tools","postings":4,"share":0.4,"required":4,"open_postings":4,"first_seen":"2026-02-04","last_seen":"2026-06-25","median_stated_pay_usd":null},{"name":"Linux","layer":"cloud","postings":4,"share":0.4,"required":4,"open_postings":4,"first_seen":"2026-02-04","last_seen":"2026-08-21","median_stated_pay_usd":null},{"name":"Python","layer":"languages","postings":4,"share":0.4,"required":4,"open_postings":4,"first_seen":"2025-07-11","last_seen":"2026-08-21","median_stated_pay_usd":null},{"name":"CI/CD","layer":"practices","postings":3,"share":0.3,"required":3,"open_postings":3,"first_seen":"2026-05-13","last_seen":"2026-06-25","median_stated_pay_usd":null},{"name":"Claude","layer":"ai","postings":2,"share":0.2,"required":2,"open_postings":2,"first_seen":"2026-06-25","last_seen":"2026-08-11","median_stated_pay_usd":null},{"name":"Kubernetes","layer":"cloud","postings":2,"share":0.2,"required":2,"open_postings":2,"first_seen":"2026-06-23","last_seen":"2026-06-25","median_stated_pay_usd":null},{"name":"AWS","layer":"cloud","postings":1,"share":0.1,"required":1,"open_postings":1,"first_seen":"2026-08-21","last_seen":"2026-08-21","median_stated_pay_usd":null},{"name":"Ansible","layer":"tools","postings":1,"share":0.1,"required":1,"open_postings":1,"first_seen":"2026-08-21","last_seen":"2026-08-21","median_stated_pay_usd":null},{"name":"Azure","layer":"cloud","postings":1,"share":0.1,"required":1,"open_postings":1,"first_seen":"2026-08-21","last_seen":"2026-08-21","median_stated_pay_usd":null},{"name":"Cell Culture","layer":"practices","postings":1,"share":0.1,"required":1,"open_postings":1,"first_seen":"2025-10-24","last_seen":"2025-10-24","median_stated_pay_usd":null},{"name":"Chromatography","layer":"practices","postings":1,"share":0.1,"required":1,"open_postings":1,"first_seen":"2025-10-24","last_seen":"2025-10-24","median_stated_pay_usd":null},{"name":"Claude Code","layer":"tools","postings":1,"share":0.1,"required":1,"open_postings":1,"first_seen":"2026-06-25","last_seen":"2026-06-25","median_stated_pay_usd":null},{"name":"Cursor","layer":"tools","postings":1,"share":0.1,"required":1,"open_postings":1,"first_seen":"2026-06-25","last_seen":"2026-06-25","median_stated_pay_usd":null},{"name":"Django","layer":"frameworks","postings":1,"share":0.1,"required":1,"open_postings":1,"first_seen":"2026-06-25","last_seen":"2026-06-25","median_stated_pay_usd":null},{"name":"ELISA","layer":"practices","postings":1,"share":0.1,"required":1,"open_postings":1,"first_seen":"2025-10-24","last_seen":"2025-10-24","median_stated_pay_usd":null},{"name":"Embodied AI","layer":"practices","postings":1,"share":0.1,"required":1,"open_postings":1,"first_seen":"2026-10-16","last_seen":"2026-10-16","median_stated_pay_usd":null},{"name":"FastAPI","layer":"frameworks","postings":1,"share":0.1,"required":1,"open_postings":1,"first_seen":"2026-06-25","last_seen":"2026-06-25","median_stated_pay_usd":null},{"name":"Function Calling","layer":"practices","postings":1,"share":0.1,"required":1,"open_postings":1,"first_seen":"2026-06-25","last_seen":"2026-06-25","median_stated_pay_usd":null},{"name":"JAX","layer":"frameworks","postings":1,"share":0.1,"required":1,"open_postings":1,"first_seen":"2026-02-04","last_seen":"2026-02-04","median_stated_pay_usd":null},{"name":"Jenkins","layer":"tools","postings":1,"share":0.1,"required":1,"open_postings":1,"first_seen":"2026-08-21","last_seen":"2026-08-21","median_stated_pay_usd":null},{"name":"Kubeflow","layer":"cloud","postings":1,"share":0.1,"required":1,"open_postings":1,"first_seen":"2026-05-13","last_seen":"2026-05-13","median_stated_pay_usd":null},{"name":"LangGraph","layer":"frameworks","postings":1,"share":0.1,"required":1,"open_postings":1,"first_seen":"2026-08-11","last_seen":"2026-08-11","median_stated_pay_usd":null},{"name":"Model Context Protocol","layer":"tools","postings":1,"share":0.1,"required":1,"open_postings":1,"first_seen":"2026-06-25","last_seen":"2026-06-25","median_stated_pay_usd":null},{"name":"Molecular Cloning","layer":"practices","postings":1,"share":0.1,"required":1,"open_postings":1,"first_seen":"2025-10-24","last_seen":"2025-10-24","median_stated_pay_usd":null},{"name":"NLP","layer":"practices","postings":1,"share":0.1,"required":1,"open_postings":1,"first_seen":"2026-10-16","last_seen":"2026-10-16","median_stated_pay_usd":null},{"name":"Next.js","layer":"frameworks","postings":1,"share":0.1,"required":1,"open_postings":1,"first_seen":"2026-06-25","last_seen":"2026-06-25","median_stated_pay_usd":null},{"name":"NumPy","layer":"frameworks","postings":1,"share":0.1,"required":1,"open_postings":1,"first_seen":"2026-02-04","last_seen":"2026-02-04","median_stated_pay_usd":null},{"name":"ONNX","layer":"tools","postings":1,"share":0.1,"required":1,"open_postings":1,"first_seen":"2026-10-16","last_seen":"2026-10-16","median_stated_pay_usd":null},{"name":"OpenAI","layer":"cloud","postings":1,"share":0.1,"required":1,"open_postings":1,"first_seen":"2026-06-25","last_seen":"2026-06-25","median_stated_pay_usd":null},{"name":"OpenAI Codex","layer":"tools","postings":1,"share":0.1,"required":1,"open_postings":1,"first_seen":"2026-06-25","last_seen":"2026-06-25","median_stated_pay_usd":null},{"name":"OpenCV","layer":"frameworks","postings":1,"share":0.1,"required":1,"open_postings":1,"first_seen":"2026-05-28","last_seen":"2026-05-28","median_stated_pay_usd":null},{"name":"PostgreSQL","layer":"data","postings":1,"share":0.1,"required":1,"open_postings":1,"first_seen":"2026-06-25","last_seen":"2026-06-25","median_stated_pay_usd":null},{"name":"Prisma Cloud","layer":"cloud","postings":1,"share":0.1,"required":1,"open_postings":1,"first_seen":"2026-08-21","last_seen":"2026-08-21","median_stated_pay_usd":null},{"name":"Prometheus","layer":"tools","postings":1,"share":0.1,"required":1,"open_postings":1,"first_seen":"2026-08-21","last_seen":"2026-08-21","median_stated_pay_usd":null},{"name":"PyTorch","layer":"frameworks","postings":1,"share":0.1,"required":1,"open_postings":1,"first_seen":"2026-02-04","last_seen":"2026-02-04","median_stated_pay_usd":null},{"name":"RAG","layer":"practices","postings":1,"share":0.1,"required":1,"open_postings":1,"first_seen":"2026-06-25","last_seen":"2026-06-25","median_stated_pay_usd":null},{"name":"React.js","layer":"frameworks","postings":1,"share":0.1,"required":1,"open_postings":1,"first_seen":"2026-06-25","last_seen":"2026-06-25","median_stated_pay_usd":null},{"name":"Redis","layer":"data","postings":1,"share":0.1,"required":1,"open_postings":1,"first_seen":"2026-06-25","last_seen":"2026-06-25","median_stated_pay_usd":null},{"name":"SOAP","layer":"practices","postings":1,"share":0.1,"required":1,"open_postings":1,"first_seen":"2026-08-18","last_seen":"2026-08-18","median_stated_pay_usd":null},{"name":"SciPy","layer":"frameworks","postings":1,"share":0.1,"required":1,"open_postings":1,"first_seen":"2026-02-04","last_seen":"2026-02-04","median_stated_pay_usd":null},{"name":"TensorFlow","layer":"frameworks","postings":1,"share":0.1,"required":1,"open_postings":1,"first_seen":"2026-02-04","last_seen":"2026-02-04","median_stated_pay_usd":null},{"name":"TypeScript","layer":"languages","postings":1,"share":0.1,"required":1,"open_postings":1,"first_seen":"2025-09-23","last_seen":"2026-06-25","median_stated_pay_usd":null},{"name":"Vision-Language-Action","layer":"practices","postings":1,"share":0.1,"required":1,"open_postings":1,"first_seen":"2026-10-16","last_seen":"2026-10-16","median_stated_pay_usd":null},{"name":"Western Blot","layer":"practices","postings":1,"share":0.1,"required":1,"open_postings":1,"first_seen":"2025-10-24","last_seen":"2025-10-24","median_stated_pay_usd":null},{"name":"Windows","layer":"cloud","postings":1,"share":0.1,"required":1,"open_postings":1,"first_seen":"2026-02-04","last_seen":"2026-02-04","median_stated_pay_usd":null},{"name":"JavaScript","layer":"languages","postings":1,"share":0.1,"required":0,"open_postings":1,"first_seen":"2025-09-23","last_seen":"2026-06-25","median_stated_pay_usd":null},{"name":"LangChain","layer":"frameworks","postings":1,"share":0.1,"required":0,"open_postings":1,"first_seen":"2026-08-11","last_seen":"2026-08-11","median_stated_pay_usd":null}],"own_products":[],"changes":{"first_appeared":[{"name":"Claude","first_seen":"2026-06-25"},{"name":"Kubernetes","first_seen":"2026-06-23"},{"name":"CI/CD","first_seen":"2026-05-13"}],"rising":[],"falling":[],"not_seen_180d":[]},"similar_stacks":[{"name":"MGI Tech","url":"https://alion.io/company/mgi-tech/technologies","shared_technologies":40},{"name":"Alongside","url":"https://alion.io/company/alongside/technologies","shared_technologies":37},{"name":"Accellor","url":"https://alion.io/company/accellor/technologies","shared_technologies":38},{"name":"Millennium Management","url":"https://alion.io/company/millennium-management/technologies","shared_technologies":41},{"name":"Grid Dynamics","url":"https://alion.io/company/grid-dynamics-poland/technologies","shared_technologies":39},{"name":"Transsion Holdings","url":"https://alion.io/company/transsion/technologies","shared_technologies":37},{"name":"Pfizer","url":"https://alion.io/company/pfizer/technologies","shared_technologies":37},{"name":"XPeng","url":"https://alion.io/company/xiaopeng-com/technologies","shared_technologies":41}],"html_url":"https://alion.io/company/xtalpi/technologies","json_url":"https://alion.io/company/xtalpi/technologies.json","license":"CC BY-SA 4.0","meta":{"source":"Alion","built_at":"2026-10-21T10:14:00Z","generated_at":"2026-10-21T14:55:30Z"}}