[{"data":1,"prerenderedAt":968},["ShallowReactive",2],{"handbook-\u002Fhandbook\u002Fengineering\u002Fops\u002Fdedicated\u002F":3,"handbook-nav":195},{"id":4,"title":5,"body":6,"description":16,"extension":188,"meta":189,"navigation":190,"path":191,"seo":192,"stem":193,"__hash__":194},"handbook\u002Fhandbook\u002Fengineering\u002Fops\u002Fdedicated.md","FlowFuse Dedicated",{"type":7,"value":8,"toc":176},"minimark",[9,13,17,20,25,28,103,107,110,113,140,144,147,154,158,161,166,169,173],[10,11,5],"h1",{"id":12},"flowfuse-dedicated",[14,15,16],"p",{},"FlowFuse Dedicated is our product offering where we will host a dedicated instance\nof the platform for a customer.",[14,18,19],{},"This is a guide for the setup and delivery of a dedicated instance.",[21,22,24],"h3",{"id":23},"pre-deployment","Pre-deployment",[14,26,27],{},"In order to create the dedicated instance, some information will be required from the customer.",[29,30,31,75,85,91,97],"ul",{},[32,33,34,38,39],"li",{},[35,36,37],"strong",{},"A domain name or sub domain name to host the platform on",".\n",[29,40,41,49,60,69,72],{},[32,42,43,44,48],{},"By default, we will offer to host the platform under a domain of ",[45,46,47],"code",{},"\u003Ccustomer>.flowfuse.io",".",[32,50,51,52,55,56,59],{},"The core platform (",[45,53,54],{},"app.","), broker (",[45,57,58],{},"mqtt.",") and hosted instances will be made available under this domain.",[32,61,62,63,65,66],{},"The base domain, ",[45,64,47],{},", will redirect to ",[45,67,68],{},"app.\u003Ccustomer>.flowfuse.io",[32,70,71],{},"All traffic to the domain will be on port 443 - including the Device Agent MQTT connection",[32,73,74],{},"If the customer requests to use their own (sub-)domain, they will need to set up their DNS to point\nat the AWS Route53 end-point once it has been created.",[32,76,77,80,81,84],{},[35,78,79],{},"Choice of AWS region",". We default to ",[45,82,83],{},"eu-west-1"," but customers may want to choose one more\nlocal to them. Not all AWS regions are equal and we may need to review their choice for suitability.",[32,86,87,90],{},[35,88,89],{},"Capacity planning",". Whilst the platform will scale to meet demand, we want to sure we provision\nit at a suitable level for their intended usage. Understanding their planned usage and growth rate\nwill help us pick the right node size for the cluster.",[32,92,93,96],{},[35,94,95],{},"Team\u002FInstance types",". We will default to creating equivalent Team and Instance types as\nwe use on FFCloud. If a customer has specific needs in this area, this should be identified prior\nto deployment.",[32,98,99,102],{},[35,100,101],{},"SSO Configuration",". As with FFCloud, if the customer plans to integrate with their SSO provider,\nwe will need to capture the necessary information. This can be done after the initial deployment.",[21,104,106],{"id":105},"deployment","Deployment",[14,108,109],{},"An issue should be raised in the CloudProject repository using the Dedicated Checklist template\nand assigned to the member of the engineering\u002Fops team who will do the setup.",[14,111,112],{},"This checklist covers the follow items:",[114,115,116,119,122,125,128,131,134,137],"ol",{},[32,117,118],{},"Create a new AWS sub-account for each dedicated env.",[32,120,121],{},"Create user accounts for the ops team",[32,123,124],{},"Use Terraform to set up initial cluster",[32,126,127],{},"Setup grafana monitoring - including all the necessary alerting",[32,129,130],{},"Setup initial admin account - store details in 1Password",[32,132,133],{},"Setup initial Stacks, Instance Types and Team Types",[32,135,136],{},"Setup SSO for customer",[32,138,139],{},"Create initial account for customer admin user (if we’re giving them admin access)",[21,141,143],{"id":142},"migration","Migration",[14,145,146],{},"For existing customers of FFCloud who are choosing to move to a FFDedicated environment,\nwe need to consider how to migrate their existing account. This will need to be considered\non a case-by-case basis in discussion with the customer as there are a number of challenges\naround providing a seamless migration.",[14,148,149,150,153],{},"For example, we cannot migrate access tokens between platforms. This will require devices\nto be reprovisioned with new credentials as well as have their ",[45,151,152],{},"device.yml"," updated to point\nto the new platform URL.",[21,155,157],{"id":156},"maintenance","Maintenance",[14,159,160],{},"We will agree a maintenance policy with the customer to fit their needs. We will require\nthe code to be kept up to date - the question is how we schedule updates.",[162,163,165],"h4",{"id":164},"flowfuse-code-updates","FlowFuse Code Updates",[14,167,168],{},"We can either do CI\u002FCD as we do for FF Cloud, or apply updates following each monthly release.",[162,170,172],{"id":171},"k8s-updates","k8s Updates",[14,174,175],{},"We will coordinate maintenance windows with the customer for when we need to apply\nupdates to the underlying k8s infrastructure as this will require restarts of their\nNode-RED instances.",{"title":177,"searchDepth":178,"depth":178,"links":179},"",4,[180,182,183,184],{"id":23,"depth":181,"text":24},3,{"id":105,"depth":181,"text":106},{"id":142,"depth":181,"text":143},{"id":156,"depth":181,"text":157,"children":185},[186,187],{"id":164,"depth":178,"text":165},{"id":171,"depth":178,"text":172},"md",{},null,"\u002Fhandbook\u002Fengineering\u002Fops\u002Fdedicated",{"title":5,"description":16},"handbook\u002Fengineering\u002Fops\u002Fdedicated","FitvTQnE3Qy22cTdc6SmNrjJ1AGWmvRXMkC5_diuF7o",[196],{"title":197,"path":198,"stem":199,"children":200},"Handbook","\u002Fhandbook","handbook",[201,203,329,361,574,657,720,855,860],{"title":197,"path":198,"stem":202},"handbook\u002Findex",{"title":204,"group":204,"icon":205,"order":206,"path":207,"stem":208,"children":209},"Company","i-lucide-building-2",1,"\u002Fhandbook\u002Fcompany","handbook\u002Fcompany\u002Findex",[210,211,215,219,223,242,246,250,254,321,325],{"title":204,"path":207,"stem":208},{"title":212,"path":213,"stem":214},"Board & Investors","\u002Fhandbook\u002Fcompany\u002Fboard","handbook\u002Fcompany\u002Fboard",{"title":216,"path":217,"stem":218},"Communications","\u002Fhandbook\u002Fcompany\u002Fcommunication","handbook\u002Fcompany\u002Fcommunication",{"title":220,"path":221,"stem":222},"Decision making and project management","\u002Fhandbook\u002Fcompany\u002Fdecisions","handbook\u002Fcompany\u002Fdecisions",{"title":224,"icon":225,"path":226,"stem":227,"children":228},"Guides","i-lucide-book-open","\u002Fhandbook\u002Fcompany\u002Fguides","handbook\u002Fcompany\u002Fguides\u002Findex",[229,230,234,238],{"title":224,"path":226,"stem":227},{"title":231,"path":232,"stem":233},"Editing the Handbook","\u002Fhandbook\u002Fcompany\u002Fguides\u002Fgit","handbook\u002Fcompany\u002Fguides\u002Fgit",{"title":235,"path":236,"stem":237},"Google Workspace","\u002Fhandbook\u002Fcompany\u002Fguides\u002Fgworkspace","handbook\u002Fcompany\u002Fguides\u002Fgworkspace",{"title":239,"path":240,"stem":241},"Markdown Guide","\u002Fhandbook\u002Fcompany\u002Fguides\u002Fmarkdown","handbook\u002Fcompany\u002Fguides\u002Fmarkdown",{"title":243,"path":244,"stem":245},"Organizational Structure","\u002Fhandbook\u002Fcompany\u002Forganizational-structure","handbook\u002Fcompany\u002Forganizational-structure",{"title":247,"path":248,"stem":249},"Principles","\u002Fhandbook\u002Fcompany\u002Fprinciples","handbook\u002Fcompany\u002Fprinciples",{"title":251,"path":252,"stem":253},"Remote Work","\u002Fhandbook\u002Fcompany\u002Fremote","handbook\u002Fcompany\u002Fremote",{"title":255,"icon":256,"path":257,"stem":258,"children":259},"Security","i-lucide-shield","\u002Fhandbook\u002Fcompany\u002Fsecurity","handbook\u002Fcompany\u002Fsecurity\u002Findex",[260,261,265,269,273,277,281,285,289,293,297,301,305,309,313,317],{"title":255,"path":257,"stem":258},{"title":262,"path":263,"stem":264},"Access Control Policy","\u002Fhandbook\u002Fcompany\u002Fsecurity\u002Faccess-control","handbook\u002Fcompany\u002Fsecurity\u002Faccess-control",{"title":266,"path":267,"stem":268},"AI Development and Customer Data Policy","\u002Fhandbook\u002Fcompany\u002Fsecurity\u002Fai-development-and-customer-data","handbook\u002Fcompany\u002Fsecurity\u002Fai-development-and-customer-data",{"title":270,"path":271,"stem":272},"Asset Management Policy","\u002Fhandbook\u002Fcompany\u002Fsecurity\u002Fasset-management","handbook\u002Fcompany\u002Fsecurity\u002Fasset-management",{"title":274,"path":275,"stem":276},"Business Continuity & Disaster Recovery Policy","\u002Fhandbook\u002Fcompany\u002Fsecurity\u002Fbusiness-continuity","handbook\u002Fcompany\u002Fsecurity\u002Fbusiness-continuity",{"title":278,"path":279,"stem":280},"Hardware Security Policy","\u002Fhandbook\u002Fcompany\u002Fsecurity\u002Fcomputer-security","handbook\u002Fcompany\u002Fsecurity\u002Fcomputer-security",{"title":282,"path":283,"stem":284},"Cryptography Policy","\u002Fhandbook\u002Fcompany\u002Fsecurity\u002Fcryptography","handbook\u002Fcompany\u002Fsecurity\u002Fcryptography",{"title":286,"path":287,"stem":288},"Data Management Policy","\u002Fhandbook\u002Fcompany\u002Fsecurity\u002Fdata-management","handbook\u002Fcompany\u002Fsecurity\u002Fdata-management",{"title":290,"path":291,"stem":292},"Human Resources Security Policy","\u002Fhandbook\u002Fcompany\u002Fsecurity\u002Fhuman-resources","handbook\u002Fcompany\u002Fsecurity\u002Fhuman-resources",{"title":294,"path":295,"stem":296},"Incident Response Plan","\u002Fhandbook\u002Fcompany\u002Fsecurity\u002Fincident-response","handbook\u002Fcompany\u002Fsecurity\u002Fincident-response",{"title":298,"path":299,"stem":300},"Information Security Policy and Acceptable Use Policy","\u002Fhandbook\u002Fcompany\u002Fsecurity\u002Finformation-security","handbook\u002Fcompany\u002Fsecurity\u002Finformation-security",{"title":302,"path":303,"stem":304},"Information Security Roles and Responsibilities","\u002Fhandbook\u002Fcompany\u002Fsecurity\u002Finformation-security-roles","handbook\u002Fcompany\u002Fsecurity\u002Finformation-security-roles",{"title":306,"path":307,"stem":308},"Operations Security Policy","\u002Fhandbook\u002Fcompany\u002Fsecurity\u002Foperations-security","handbook\u002Fcompany\u002Fsecurity\u002Foperations-security",{"title":310,"path":311,"stem":312},"Risk Management Policy","\u002Fhandbook\u002Fcompany\u002Fsecurity\u002Frisk-management","handbook\u002Fcompany\u002Fsecurity\u002Frisk-management",{"title":314,"path":315,"stem":316},"Secure Development Policy","\u002Fhandbook\u002Fcompany\u002Fsecurity\u002Fsecure-development","handbook\u002Fcompany\u002Fsecurity\u002Fsecure-development",{"title":318,"path":319,"stem":320},"Third-Party Risk Management Policy","\u002Fhandbook\u002Fcompany\u002Fsecurity\u002Fthird-party-risk-management","handbook\u002Fcompany\u002Fsecurity\u002Fthird-party-risk-management",{"title":322,"path":323,"stem":324},"Strategy","\u002Fhandbook\u002Fcompany\u002Fstrategy","handbook\u002Fcompany\u002Fstrategy",{"title":326,"path":327,"stem":328},"Values","\u002Fhandbook\u002Fcompany\u002Fvalues","handbook\u002Fcompany\u002Fvalues",{"title":330,"group":331,"icon":332,"order":178,"path":333,"stem":334,"children":335},"Design","Engineering & Design Practices","i-lucide-pen-tool","\u002Fhandbook\u002Fdesign","handbook\u002Fdesign\u002Findex",[336,337,341,345,349,353,357],{"title":330,"path":333,"stem":334},{"title":338,"path":339,"stem":340},"Art Requests","\u002Fhandbook\u002Fdesign\u002Fart-requests","handbook\u002Fdesign\u002Fart-requests",{"title":342,"path":343,"stem":344},"Branding","\u002Fhandbook\u002Fdesign\u002Fbranding","handbook\u002Fdesign\u002Fbranding",{"title":346,"path":347,"stem":348},"Design Thinking","\u002Fhandbook\u002Fdesign\u002Fdesign-thinking","handbook\u002Fdesign\u002Fdesign-thinking",{"title":350,"path":351,"stem":352},"Process","\u002Fhandbook\u002Fdesign\u002Fprocess","handbook\u002Fdesign\u002Fprocess",{"title":354,"path":355,"stem":356},"Tools","\u002Fhandbook\u002Fdesign\u002Ftools","handbook\u002Fdesign\u002Ftools",{"title":358,"path":359,"stem":360},"Video","\u002Fhandbook\u002Fdesign\u002Fvideos","handbook\u002Fdesign\u002Fvideos",{"title":362,"group":331,"icon":363,"order":181,"path":364,"stem":365,"children":366},"Engineering","i-lucide-code-2","\u002Fhandbook\u002Fengineering","handbook\u002Fengineering\u002Findex",[367,368,372,391,395,399,403,426,464,468,525,529,552,556,571],{"title":362,"path":364,"stem":365},{"title":369,"path":370,"stem":371},"Blueprints","\u002Fhandbook\u002Fengineering\u002Fblueprints","handbook\u002Fengineering\u002Fblueprints",{"title":373,"icon":374,"path":375,"stem":376,"children":377},"Contributing","i-lucide-git-pull-request","\u002Fhandbook\u002Fengineering\u002Fcontributing","handbook\u002Fengineering\u002Fcontributing\u002Findex",[378,379,383,387],{"title":373,"path":375,"stem":376},{"title":380,"path":381,"stem":382},"Certified Nodes","\u002Fhandbook\u002Fengineering\u002Fcontributing\u002Fcertified-nodes","handbook\u002Fengineering\u002Fcontributing\u002Fcertified-nodes",{"title":384,"path":385,"stem":386},"FF Tables","\u002Fhandbook\u002Fengineering\u002Fcontributing\u002Fff-tables","handbook\u002Fengineering\u002Fcontributing\u002Fff-tables",{"title":388,"path":389,"stem":390},"Team NPM Registry","\u002Fhandbook\u002Fengineering\u002Fcontributing\u002Fteam-npm-registry","handbook\u002Fengineering\u002Fcontributing\u002Fteam-npm-registry",{"title":392,"path":393,"stem":394},"Node-RED Dashboard","\u002Fhandbook\u002Fengineering\u002Fdashboard","handbook\u002Fengineering\u002Fdashboard",{"title":396,"path":397,"stem":398},"Dependency Updates","\u002Fhandbook\u002Fengineering\u002Fdependency-updates","handbook\u002Fengineering\u002Fdependency-updates",{"title":400,"path":401,"stem":402},"Feature Flags in PostHog","\u002Fhandbook\u002Fengineering\u002Ffeature-flags","handbook\u002Fengineering\u002Ffeature-flags",{"title":404,"icon":405,"path":406,"stem":407,"children":408},"Front End","i-lucide-layout-dashboard","\u002Fhandbook\u002Fengineering\u002Ffrontend","handbook\u002Fengineering\u002Ffrontend\u002Findex",[409,410,414,418,422],{"title":404,"path":406,"stem":407},{"title":411,"path":412,"stem":413},"Data Attributes","\u002Fhandbook\u002Fengineering\u002Ffrontend\u002Fdata-attributes","handbook\u002Fengineering\u002Ffrontend\u002Fdata-attributes",{"title":415,"path":416,"stem":417},"Front-End Layouts","\u002Fhandbook\u002Fengineering\u002Ffrontend\u002Flayouts","handbook\u002Fengineering\u002Ffrontend\u002Flayouts",{"title":419,"path":420,"stem":421},"Front-End Services","\u002Fhandbook\u002Fengineering\u002Ffrontend\u002Fservices","handbook\u002Fengineering\u002Ffrontend\u002Fservices",{"title":423,"path":424,"stem":425},"Front-End Testing","\u002Fhandbook\u002Fengineering\u002Ffrontend\u002Ftesting","handbook\u002Fengineering\u002Ffrontend\u002Ftesting",{"title":427,"icon":428,"path":429,"stem":430,"children":431},"Platform Ops","i-lucide-server","\u002Fhandbook\u002Fengineering\u002Fops","handbook\u002Fengineering\u002Fops\u002Findex",[432,433,436,437,440,444,448,452,456,460],{"title":427,"path":429,"stem":430},{"title":380,"path":434,"stem":435},"\u002Fhandbook\u002Fengineering\u002Fops\u002Fcertified-nodes","handbook\u002Fengineering\u002Fops\u002Fcertified-nodes",{"title":5,"path":191,"stem":193},{"title":106,"path":438,"stem":439},"\u002Fhandbook\u002Fengineering\u002Fops\u002Fdeployment","handbook\u002Fengineering\u002Fops\u002Fdeployment",{"title":441,"path":442,"stem":443},"Incident Response","\u002Fhandbook\u002Fengineering\u002Fops\u002Fincident-response","handbook\u002Fengineering\u002Fops\u002Fincident-response",{"title":445,"path":446,"stem":447},"Observability","\u002Fhandbook\u002Fengineering\u002Fops\u002Fobservability","handbook\u002Fengineering\u002Fops\u002Fobservability",{"title":449,"path":450,"stem":451},"Production Environment","\u002Fhandbook\u002Fengineering\u002Fops\u002Fproduction","handbook\u002Fengineering\u002Fops\u002Fproduction",{"title":453,"path":454,"stem":455},"Update Stacks on Production","\u002Fhandbook\u002Fengineering\u002Fops\u002Fproduction-stack-update","handbook\u002Fengineering\u002Fops\u002Fproduction-stack-update",{"title":457,"path":458,"stem":459},"Self Hosted Assistant","\u002Fhandbook\u002Fengineering\u002Fops\u002Fself-hosted-assistant","handbook\u002Fengineering\u002Fops\u002Fself-hosted-assistant",{"title":461,"path":462,"stem":463},"Staging Environment","\u002Fhandbook\u002Fengineering\u002Fops\u002Fstaging","handbook\u002Fengineering\u002Fops\u002Fstaging",{"title":465,"path":466,"stem":467},"Packaging Guidelines","\u002Fhandbook\u002Fengineering\u002Fpackaging","handbook\u002Fengineering\u002Fpackaging",{"title":469,"icon":470,"path":471,"stem":472,"children":473},"Product","i-lucide-package","\u002Fhandbook\u002Fengineering\u002Fproduct","handbook\u002Fengineering\u002Fproduct\u002Findex",[474,475,479,483,487,491,495,502,506,509,513,517,521],{"title":469,"path":471,"stem":472},{"title":476,"path":477,"stem":478},"Feature Catalog","\u002Fhandbook\u002Fengineering\u002Fproduct\u002Ffeatures","handbook\u002Fengineering\u002Fproduct\u002Ffeatures",{"title":480,"path":481,"stem":482},"Feedback","\u002Fhandbook\u002Fengineering\u002Fproduct\u002Ffeedback","handbook\u002Fengineering\u002Fproduct\u002Ffeedback",{"title":484,"path":485,"stem":486},"Glossary","\u002Fhandbook\u002Fengineering\u002Fproduct\u002Fglossary","handbook\u002Fengineering\u002Fproduct\u002Fglossary",{"title":488,"path":489,"stem":490},"Methodology","\u002Fhandbook\u002Fengineering\u002Fproduct\u002Fmethodology","handbook\u002Fengineering\u002Fproduct\u002Fmethodology",{"title":492,"path":493,"stem":494},"Metrics","\u002Fhandbook\u002Fengineering\u002Fproduct\u002Fmetrics","handbook\u002Fengineering\u002Fproduct\u002Fmetrics",{"title":496,"path":497,"stem":498,"children":499,"icon":501},"Personas","\u002Fhandbook\u002Fengineering\u002Fproduct\u002Fpersonas","handbook\u002Fengineering\u002Fproduct\u002Fpersonas\u002Findex",[500],{"title":496,"path":497,"stem":498},"i-lucide-user-circle",{"title":503,"path":504,"stem":505},"Pricing Principles","\u002Fhandbook\u002Fengineering\u002Fproduct\u002Fpricing","handbook\u002Fengineering\u002Fproduct\u002Fpricing",{"title":247,"path":507,"stem":508},"\u002Fhandbook\u002Fengineering\u002Fproduct\u002Fprinciples","handbook\u002Fengineering\u002Fproduct\u002Fprinciples",{"title":510,"path":511,"stem":512},"Product Swimlanes","\u002Fhandbook\u002Fengineering\u002Fproduct\u002Fproduct-swimlanes","handbook\u002Fengineering\u002Fproduct\u002Fproduct-swimlanes",{"title":514,"path":515,"stem":516},"Product Growth","\u002Fhandbook\u002Fengineering\u002Fproduct\u002Ftelemetry","handbook\u002Fengineering\u002Fproduct\u002Ftelemetry",{"title":518,"path":519,"stem":520},"Versioning","\u002Fhandbook\u002Fengineering\u002Fproduct\u002Fversioning","handbook\u002Fengineering\u002Fproduct\u002Fversioning",{"title":522,"path":523,"stem":524},"Market Segments","\u002Fhandbook\u002Fengineering\u002Fproduct\u002Fverticals","handbook\u002Fengineering\u002Fproduct\u002Fverticals",{"title":526,"path":527,"stem":528},"Project Management","\u002Fhandbook\u002Fengineering\u002Fproject-management","handbook\u002Fengineering\u002Fproject-management",{"title":530,"icon":531,"path":532,"stem":533,"children":534},"Releases","i-lucide-rocket","\u002Fhandbook\u002Fengineering\u002Freleases","handbook\u002Fengineering\u002Freleases\u002Findex",[535,536,540,544,548],{"title":530,"path":532,"stem":533},{"title":537,"path":538,"stem":539},"Dashboard 2.0 Releases","\u002Fhandbook\u002Fengineering\u002Freleases\u002Fdashboard-2","handbook\u002Fengineering\u002Freleases\u002Fdashboard-2",{"title":541,"path":542,"stem":543},"Release Process - Digital Ocean","\u002Fhandbook\u002Fengineering\u002Freleases\u002Fdigital-ocean","handbook\u002Fengineering\u002Freleases\u002Fdigital-ocean",{"title":545,"path":546,"stem":547},"Release Process","\u002Fhandbook\u002Fengineering\u002Freleases\u002Fprocess","handbook\u002Fengineering\u002Freleases\u002Fprocess",{"title":549,"path":550,"stem":551},"Changelog Posts","\u002Fhandbook\u002Fengineering\u002Freleases\u002Fwriting-changelog","handbook\u002Fengineering\u002Freleases\u002Fwriting-changelog",{"title":553,"path":554,"stem":555},"Security Policy","\u002Fhandbook\u002Fengineering\u002Fsecurity","handbook\u002Fengineering\u002Fsecurity",{"title":557,"path":558,"stem":559,"children":560,"icon":570},"Support","\u002Fhandbook\u002Fengineering\u002Fsupport","handbook\u002Fengineering\u002Fsupport\u002Findex",[561,562,566],{"title":557,"path":558,"stem":559},{"title":563,"path":564,"stem":565},"Triage Duty","\u002Fhandbook\u002Fengineering\u002Fsupport\u002Ftriage","handbook\u002Fengineering\u002Fsupport\u002Ftriage",{"title":567,"path":568,"stem":569},"Troubleshooting","\u002Fhandbook\u002Fengineering\u002Fsupport\u002Ftroubleshooting","handbook\u002Fengineering\u002Fsupport\u002Ftroubleshooting","i-lucide-life-buoy",{"title":354,"path":572,"stem":573},"\u002Fhandbook\u002Fengineering\u002Ftools","handbook\u002Fengineering\u002Ftools",{"title":575,"group":576,"icon":577,"order":578,"path":579,"stem":580,"children":581},"Marketing","Marketing department","i-lucide-megaphone",6,"\u002Fhandbook\u002Fmarketing","handbook\u002Fmarketing\u002Findex",[582,583,587,602,621,625,629,633,637,641,645,649,653],{"title":575,"path":579,"stem":580},{"title":584,"path":585,"stem":586},"Brand Voice","\u002Fhandbook\u002Fmarketing\u002Fbrand-voice","handbook\u002Fmarketing\u002Fbrand-voice",{"title":588,"icon":589,"path":590,"stem":591,"children":592},"Community","i-lucide-users-2","\u002Fhandbook\u002Fmarketing\u002Fcommunity","handbook\u002Fmarketing\u002Fcommunity\u002Findex",[593,594,598],{"title":588,"path":590,"stem":591},{"title":595,"path":596,"stem":597},"Community Guidelines","\u002Fhandbook\u002Fmarketing\u002Fcommunity\u002Fcommunity-guidelines","handbook\u002Fmarketing\u002Fcommunity\u002Fcommunity-guidelines",{"title":599,"path":600,"stem":601},"Forums And Support","\u002Fhandbook\u002Fmarketing\u002Fcommunity\u002Fforums-and-support","handbook\u002Fmarketing\u002Fcommunity\u002Fforums-and-support",{"title":603,"icon":604,"path":605,"stem":606,"children":607,"order":206},"Content Strategy","i-lucide-file-text","\u002Fhandbook\u002Fmarketing\u002Fcontent-strategy","handbook\u002Fmarketing\u002Fcontent-strategy\u002Findex",[608,609,613,617],{"title":603,"path":605,"stem":606,"order":206},{"title":610,"path":611,"stem":612},"Blog","\u002Fhandbook\u002Fmarketing\u002Fcontent-strategy\u002Fblog","handbook\u002Fmarketing\u002Fcontent-strategy\u002Fblog",{"title":614,"path":615,"stem":616},"Customer Stories","\u002Fhandbook\u002Fmarketing\u002Fcontent-strategy\u002Fcustomer-stories","handbook\u002Fmarketing\u002Fcontent-strategy\u002Fcustomer-stories",{"title":618,"path":619,"stem":620},"Webinars","\u002Fhandbook\u002Fmarketing\u002Fcontent-strategy\u002Fwebinars","handbook\u002Fmarketing\u002Fcontent-strategy\u002Fwebinars",{"title":622,"path":623,"stem":624},"FlowFuse for Education","\u002Fhandbook\u002Fmarketing\u002Feducation","handbook\u002Fmarketing\u002Feducation",{"title":626,"path":627,"stem":628},"Events","\u002Fhandbook\u002Fmarketing\u002Fevents","handbook\u002Fmarketing\u002Fevents",{"title":630,"path":631,"stem":632},"How we work","\u002Fhandbook\u002Fmarketing\u002Fhow-we-work","handbook\u002Fmarketing\u002Fhow-we-work",{"title":634,"path":635,"stem":636},"Lead Activation","\u002Fhandbook\u002Fmarketing\u002Flead-activation","handbook\u002Fmarketing\u002Flead-activation",{"title":638,"path":639,"stem":640},"Lead Generation","\u002Fhandbook\u002Fmarketing\u002Fleads","handbook\u002Fmarketing\u002Fleads",{"title":642,"path":643,"stem":644},"Company Messaging","\u002Fhandbook\u002Fmarketing\u002Fmessaging","handbook\u002Fmarketing\u002Fmessaging",{"title":646,"path":647,"stem":648},"Marketing Programs","\u002Fhandbook\u002Fmarketing\u002Fprograms","handbook\u002Fmarketing\u002Fprograms",{"title":650,"path":651,"stem":652},"Social Media","\u002Fhandbook\u002Fmarketing\u002Fsocial-media","handbook\u002Fmarketing\u002Fsocial-media",{"title":654,"path":655,"stem":656},"Website","\u002Fhandbook\u002Fmarketing\u002Fwebsite","handbook\u002Fmarketing\u002Fwebsite",{"title":658,"group":204,"icon":659,"order":660,"path":661,"stem":662,"children":663},"Operations","i-lucide-settings-2",2,"\u002Fhandbook\u002Foperations","handbook\u002Foperations\u002Findex",[664,665,669,673,677,700,704,708,712,716],{"title":658,"path":661,"stem":662},{"title":666,"path":667,"stem":668},"Accounting","\u002Fhandbook\u002Foperations\u002Faccounting","handbook\u002Foperations\u002Faccounting",{"title":670,"path":671,"stem":672},"Accounts","\u002Fhandbook\u002Foperations\u002Faccounts","handbook\u002Foperations\u002Faccounts",{"title":674,"path":675,"stem":676},"Billing","\u002Fhandbook\u002Foperations\u002Fbilling","handbook\u002Foperations\u002Fbilling",{"title":678,"icon":679,"path":680,"stem":681,"children":682},"CEO Ops","i-lucide-briefcase","\u002Fhandbook\u002Foperations\u002Fceo-ops","handbook\u002Foperations\u002Fceo-ops\u002Findex",[683,684,688,692,696],{"title":678,"path":680,"stem":681},{"title":685,"path":686,"stem":687},"Calendar Management","\u002Fhandbook\u002Foperations\u002Fceo-ops\u002Fcalendar-management","handbook\u002Foperations\u002Fceo-ops\u002Fcalendar-management",{"title":689,"path":690,"stem":691},"Inbox Management","\u002Fhandbook\u002Foperations\u002Fceo-ops\u002Finbox-management","handbook\u002Foperations\u002Fceo-ops\u002Finbox-management",{"title":693,"path":694,"stem":695},"Task Management","\u002Fhandbook\u002Foperations\u002Fceo-ops\u002Ftask-managment","handbook\u002Foperations\u002Fceo-ops\u002Ftask-managment",{"title":697,"path":698,"stem":699},"Travel Booking","\u002Fhandbook\u002Foperations\u002Fceo-ops\u002Ftravel-booking","handbook\u002Foperations\u002Fceo-ops\u002Ftravel-booking",{"title":701,"path":702,"stem":703},"Change Control","\u002Fhandbook\u002Foperations\u002Fchange","handbook\u002Foperations\u002Fchange",{"title":705,"path":706,"stem":707},"Commission Payment","\u002Fhandbook\u002Foperations\u002Fcommission-payment","handbook\u002Foperations\u002Fcommission-payment",{"title":709,"path":710,"stem":711},"Data at FlowFuse","\u002Fhandbook\u002Foperations\u002Fdata","handbook\u002Foperations\u002Fdata",{"title":713,"path":714,"stem":715},"Signatures","\u002Fhandbook\u002Foperations\u002Fsignatures","handbook\u002Foperations\u002Fsignatures",{"title":717,"path":718,"stem":719},"Vendors","\u002Fhandbook\u002Foperations\u002Fvendors","handbook\u002Foperations\u002Fvendors",{"title":721,"group":722,"icon":723,"order":724,"path":725,"stem":726,"children":727},"People Ops","Internal Operations","i-lucide-users",5,"\u002Fhandbook\u002Fpeopleops","handbook\u002Fpeopleops\u002Findex",[728,729,733,737,741,745,749,768,835,839,843,847,851],{"title":721,"path":725,"stem":726},{"title":730,"path":731,"stem":732},"Coaching Plans","\u002Fhandbook\u002Fpeopleops\u002Fcoaching-plans","handbook\u002Fpeopleops\u002Fcoaching-plans",{"title":734,"path":735,"stem":736},"Code of Conduct","\u002Fhandbook\u002Fpeopleops\u002Fcode-of-conduct","handbook\u002Fpeopleops\u002Fcode-of-conduct",{"title":738,"path":739,"stem":740},"Compensation","\u002Fhandbook\u002Fpeopleops\u002Fcompensation","handbook\u002Fpeopleops\u002Fcompensation",{"title":742,"path":743,"stem":744},"Compliance & Regulatory","\u002Fhandbook\u002Fpeopleops\u002Fcompliance","handbook\u002Fpeopleops\u002Fcompliance",{"title":746,"path":747,"stem":748},"Expenses","\u002Fhandbook\u002Fpeopleops\u002Fexpenses","handbook\u002Fpeopleops\u002Fexpenses",{"title":750,"path":751,"stem":752,"children":753,"icon":767},"Hiring","\u002Fhandbook\u002Fpeopleops\u002Fhiring","handbook\u002Fpeopleops\u002Fhiring\u002Findex",[754,755,759,763],{"title":750,"path":751,"stem":752},{"title":756,"path":757,"stem":758},"Working with Recruiters","\u002Fhandbook\u002Fpeopleops\u002Fhiring\u002Frecruiters","handbook\u002Fpeopleops\u002Fhiring\u002Frecruiters",{"title":760,"path":761,"stem":762},"Screening Call","\u002Fhandbook\u002Fpeopleops\u002Fhiring\u002Fscreening-call","handbook\u002Fpeopleops\u002Fhiring\u002Fscreening-call",{"title":764,"path":765,"stem":766},"STAR Questions","\u002Fhandbook\u002Fpeopleops\u002Fhiring\u002Fstar-questions","handbook\u002Fpeopleops\u002Fhiring\u002Fstar-questions","i-lucide-user-plus",{"title":769,"icon":770,"path":771,"stem":772,"children":773},"Job Descriptions","i-lucide-file-badge","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Findex",[774,775,779,783,787,791,795,799,803,807,811,815,819,823,827,831],{"title":769,"path":771,"stem":772},{"title":776,"path":777,"stem":778},"Account Executive","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Faccount-executive","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Faccount-executive",{"title":780,"path":781,"stem":782},"CEO","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Fceo","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Fceo",{"title":784,"path":785,"stem":786},"Chief of Staff","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Fchief-of-staff","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Fchief-of-staff",{"title":788,"path":789,"stem":790},"CTO","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Fcto","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Fcto",{"title":792,"path":793,"stem":794},"Developer Relations Advocate","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Fdeveloper-relations-advocate","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Fdeveloper-relations-advocate",{"title":796,"path":797,"stem":798},"Engineering Manager","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Fengineering-manager","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Fengineering-manager",{"title":800,"path":801,"stem":802},"Fullstack Engineer","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Ffullstack-engineer","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Ffullstack-engineer",{"title":804,"path":805,"stem":806},"Fullstack Engineer (AI-Focused)","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Ffullstack-engineer-ai","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Ffullstack-engineer-ai",{"title":808,"path":809,"stem":810},"Head of Marketing","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Fhead-of-marketing","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Fhead-of-marketing",{"title":812,"path":813,"stem":814},"Product Manager","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Fproduct-manager","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Fproduct-manager",{"title":816,"path":817,"stem":818},"Product Marketer","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Fproduct-marketer","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Fproduct-marketer",{"title":820,"path":821,"stem":822},"Sales Development Representative (SDR)","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Fsales-development-representative","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Fsales-development-representative",{"title":824,"path":825,"stem":826},"Solutions Engineer","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Fsolutions-engineer","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Fsolutions-engineer",{"title":828,"path":829,"stem":830},"Technical Product Manager","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Ftechnical-product-manager","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Ftechnical-product-manager",{"title":832,"path":833,"stem":834},"VP of Sales","\u002Fhandbook\u002Fpeopleops\u002Fjob-descriptions\u002Fvp-sales","handbook\u002Fpeopleops\u002Fjob-descriptions\u002Fvp-sales",{"title":836,"path":837,"stem":838},"Holiday & Leave","\u002Fhandbook\u002Fpeopleops\u002Fleave","handbook\u002Fpeopleops\u002Fleave",{"title":840,"path":841,"stem":842},"PeopleOps Policies","\u002Fhandbook\u002Fpeopleops\u002Forganization","handbook\u002Fpeopleops\u002Forganization",{"title":844,"path":845,"stem":846},"Performance review","\u002Fhandbook\u002Fpeopleops\u002Fperformance-review","handbook\u002Fpeopleops\u002Fperformance-review",{"title":848,"path":849,"stem":850},"Summit","\u002Fhandbook\u002Fpeopleops\u002Fsummit","handbook\u002Fpeopleops\u002Fsummit",{"title":852,"path":853,"stem":854},"Travel","\u002Fhandbook\u002Fpeopleops\u002Ftravel","handbook\u002Fpeopleops\u002Ftravel",{"title":856,"path":857,"stem":858,"group":197,"order":859},"Recent Updates","\u002Fhandbook\u002Frecent-changes","handbook\u002Frecent-changes",0,{"title":861,"group":862,"icon":863,"order":864,"path":865,"stem":866,"children":867},"Sales","Sales department","i-lucide-trending-up",7,"\u002Fhandbook\u002Fsales","handbook\u002Fsales\u002Findex",[868,869,876,880,884,888,892,896,900,904,923,927,941,945,952,956,960,964],{"title":861,"path":865,"stem":866},{"title":870,"path":871,"stem":872,"children":873,"icon":875},"Sales Compensation Plan","\u002Fhandbook\u002Fsales\u002Fcommission-plan","handbook\u002Fsales\u002Fcommission-plan\u002Findex",[874],{"title":870,"path":871,"stem":872},"i-lucide-dollar-sign",{"title":877,"path":878,"stem":879},"Customer Success","\u002Fhandbook\u002Fsales\u002Fcustomer-success","handbook\u002Fsales\u002Fcustomer-success",{"title":881,"path":882,"stem":883},"Self Hosted Dashboard v2 Multi User","\u002Fhandbook\u002Fsales\u002Fdashboard-v2","handbook\u002Fsales\u002Fdashboard-v2",{"title":885,"path":886,"stem":887},"Edge Connectivity Sales Process","\u002Fhandbook\u002Fsales\u002Fedge-connect-process","handbook\u002Fsales\u002Fedge-connect-process",{"title":889,"path":890,"stem":891},"Engagements & Pricing","\u002Fhandbook\u002Fsales\u002Fengagements","handbook\u002Fsales\u002Fengagements",{"title":893,"path":894,"stem":895},"Forecast Review","\u002Fhandbook\u002Fsales\u002Fforecast-review","handbook\u002Fsales\u002Fforecast-review",{"title":897,"path":898,"stem":899},"HubSpot","\u002Fhandbook\u002Fsales\u002Fhubspot","handbook\u002Fsales\u002Fhubspot",{"title":901,"path":902,"stem":903},"Legal","\u002Fhandbook\u002Fsales\u002Flegal","handbook\u002Fsales\u002Flegal",{"title":905,"icon":906,"path":907,"stem":908,"children":909},"Sales Meetings","i-lucide-calendar","\u002Fhandbook\u002Fsales\u002Fmeetings","handbook\u002Fsales\u002Fmeetings\u002Findex",[910,911,915,919],{"title":905,"path":907,"stem":908},{"title":912,"path":913,"stem":914},"Demo","\u002Fhandbook\u002Fsales\u002Fmeetings\u002Fdemo","handbook\u002Fsales\u002Fmeetings\u002Fdemo",{"title":916,"path":917,"stem":918},"Discovery Meeting","\u002Fhandbook\u002Fsales\u002Fmeetings\u002Fdiscovery","handbook\u002Fsales\u002Fmeetings\u002Fdiscovery",{"title":920,"path":921,"stem":922},"Proof of Concept","\u002Fhandbook\u002Fsales\u002Fmeetings\u002Fpoc","handbook\u002Fsales\u002Fmeetings\u002Fpoc",{"title":924,"path":925,"stem":926},"Sales Team Operating Principles","\u002Fhandbook\u002Fsales\u002Foperating-principles","handbook\u002Fsales\u002Foperating-principles",{"title":928,"icon":929,"path":930,"stem":931,"children":932},"Commercial Organization","i-lucide-sitemap","\u002Fhandbook\u002Fsales\u002Forg","handbook\u002Fsales\u002Forg\u002Findex",[933,934],{"title":928,"path":930,"stem":931},{"title":935,"path":936,"stem":937,"children":938,"icon":940},"Account Executives","\u002Fhandbook\u002Fsales\u002Forg\u002Faccount-executives","handbook\u002Fsales\u002Forg\u002Faccount-executives\u002Findex",[939],{"title":935,"path":936,"stem":937},"i-lucide-user-check",{"title":942,"path":943,"stem":944},"Partnerships","\u002Fhandbook\u002Fsales\u002Fpartnerships","handbook\u002Fsales\u002Fpartnerships",{"title":946,"path":947,"stem":948,"children":949,"icon":951},"Processes","\u002Fhandbook\u002Fsales\u002Fprocesses","handbook\u002Fsales\u002Fprocesses\u002Findex",[950],{"title":946,"path":947,"stem":948},"i-lucide-workflow",{"title":953,"path":954,"stem":955},"Professional Services","\u002Fhandbook\u002Fsales\u002Fprofessional-services","handbook\u002Fsales\u002Fprofessional-services",{"title":957,"path":958,"stem":959},"Sales Regions","\u002Fhandbook\u002Fsales\u002Fregions","handbook\u002Fsales\u002Fregions",{"title":961,"path":962,"stem":963},"Sales Deck","\u002Fhandbook\u002Fsales\u002Fsales-deck","handbook\u002Fsales\u002Fsales-deck",{"title":965,"path":966,"stem":967},"Subscription Agreement 1.5","\u002Fhandbook\u002Fsales\u002Fsubscription-agreement-1.5","handbook\u002Fsales\u002Fsubscription-agreement-1.5",1782768137219]