- handbook
- Company
- Company
- Board & Investors
- Communications
- Decision making and project management
- Guides
- principles
- Remote Work
- Security
- Business Continuity & Disaster Recovery Policy
- Information Security Roles and Responsibilities
- Operations Security Policy
- Risk Management Policy
- Third-Party Risk Management Policy
- Human Resources Security Policy
- Incident Response Plan
- Cryptography Policy
- Secure Development Policy
- Information Security Policy and Acceptable Use Policy
- Data Management Policy
- Hardware Security Policy
- Access Control Policy
- Asset Management Policy
- strategy
- values
- Operations
- Product
- Blueprints
- Feedback
- Glossary
- Market Segments
- Metrics
- Node-RED Dashboard
- Personas
- Pricing Principles
- Principles
- Product Growth
- Strategy
- Versioning
- Engineering & Design Practices
- Design
- Engineering
- Contributing
- Front End
- Packaging Guidelines
- Platform Ops
- Incident Response
- Observability
- FlowFuse Dedicated
- Staging Environment
- Production Environment
- Deployment
- Update Stacks on Production
- Self Hosted Assistant
- Project Management
- Releases
- Security Policy
- Support
- tools
- Internal Operations
- People Ops
- Coaching Plans
- Code of Conduct
- Compensation
- Expenses
- Hiring
- Holiday & Leave
- Job Descriptions
- CEO
- CTO
- Account Executive
- Engineering Manager
- Solutions Engineer
- VP of Sales
- Developer Relations Advocate
- Chief of Staff
- Product Manager
- Product Marketer
- PeopleOps Policies
- Performance review
- Summit
- Marketing department
- Marketing
- blog
- Brand Voice
- Community
- Company Messaging
- Customer Stories
- Events
- FlowFuse for Education
- How we work
- Lead Activation
- Lead Generation
- Marketing - Website
- Marketing Programs
- Social Media
- Webinars
- Sales department
- Sales
Operations
This covers how we run our business and deliver service to our customers.
Services used at FlowFuse
At FlowFuse there's a couple of services that are vital to the operation of the business. As a matter of having a plan before these services are taken offline or go bankrupt a table is maintained with where to go in case of service disruption.
| Primary service | Goal | Backup Service | Do not use |
|---|---|---|---|
| Slack | Emphemeral internal communication | Google Spaces (in Gmail) | Email (only for legal items) |
| Slack Huddles | Internal face to face commuication | Google Meet | - |
| Google Meet / Zoom | External video calls | Google Meet / Zoom | - |
| Google Appointment Schedules | Scheduling meetings with external parties | Calendly | - |
| AWS | Hosting for FlowFuse Cloud | ? | - |
| GitHub | Task management, planning and code development | - | - |
While there are a number of email aliases and google groups used throughout the organization, there is some activities across operations, people operations, and finance management that requires that activities be done with external parties. As a redundancy, rather than use a person's individual email (e.g. zj@), we use a google group to avoid the risk of information getting lost. For example, for some government filings, we use ops@.
GitHub
We use GitHub for task management, planning and code development across the company. The following is a high-level guide to the core repositories.
The Engineering team maintains a large number of repositories related to individual components of the product.
| Repository | Purpose | Public/Private |
|---|---|---|
| FlowFuse/admin | Company Admin tasks; onboarding/offboarding employees, access requests, release checklists | private |
| FlowFuse/website | The FlowFuse Website, including handbook | public |
| FlowFuse/CloudProject | Task management for FlowFuse Cloud platform | private |
| FlowFuse/customer | Task management for events and customer-specific work; webinars, artwork requests | private |
| FlowFuse/dev-env | FlowFuse development environment tooling | public |
| FlowFuse/flowfuse | The core product code repository | public |
| FlowFuse/node-red | A planning repository for upstream Node-RED tasks | private |
To create a new repository, first open an issue in the Admin repository using the New Repository checklist. This ensures all required security controls are applied.