the mission of "making small business the leading role in the world" freee develops and provides services with the aim of building an "integrated management platform that anyone can freely manage." We believe that a small business that can boldly and quickly embody ideas can generate various innovations and at the same time stimulate large companies to create a new movement in the world as a whole.
VISION To develop and provide an "integrated management platform" to create an environment where anyone can manage freely and naturally. By integrating back office operations, automation and overall operational efficiency can be improved. Furthermore, by visualizing the entire management, to evolve into a platform that can execute smart and optimal actions that have never been seen before. In addition, as an open platform linked with external services, it responds to various business needs. To also strengthen the activation of mutual transactions within the user network. In addition to providing a platform, to promote changes in the world by making efforts to improve the environment of people involved in small businesses.
The number of paid companies The number of paid user companies(1) To 470,000 June 2021 45.1万 June 2022 ※(1) As of 2023/12/31. It also includes sole proprietors. 37.9万 29.3万 22.4万 16万 12.1万 8.3万 Efforts to expand the user base 47.2万 June 2023
API release Service split start Introducing a team system Cloud ERP concept announce ment Microservi cing start Infrastructur e investment acceleration Platform first year New products acceleration Global develop ment freee HR freee Founding freee Opening freee Tax Filing freee finance lab Established freee App store freee Project manageme nt freee Card Unlimited
Go Rails 7.x Web Frontend CoffeeScript Backbone.js Sprockets TypeScript JavaScript (Flow) React Vite / webpack Mobile Application - - Swift / Kotlin SwiftUI / Jetpack Compose Infrastructure Heroku -> AWS Chef AWS Kubernetes Terraform Data Platform - - Python TensorFlow BigQuery Evolutionary Trajectory: Technology Stack Technology replacement is almost complete in all areas. Rails from 3.2 to 7.x.
Improving System Scalability - The number of users and data size were increased on a daily basis - Security - Reliability Improving Organizational Scalability - A lot of new services and teams were emerging. - Unspoken rules were increased over time. - Reducing the cost of onboarding new employees is crucial. We are still working on these two issues, but I would like to introduce how freee has been resolving them.
Lean Startup Lean startup is a clear set of principles to create and design startups under limited resources and tremendous uncertainty to build their ventures more flexibly and at a lower cost. It is based on the idea that entrepreneurs can make their implicit assumptions about how their venture works explicit and empirically testing it … - find a problem worth solving, then define a solution - engage early adopters for market validation - continually test with smaller, faster iterations - build a function, measure customer response, and verify/refute the idea - evidence-based decisions on when to pivot by changing your plan's course - maximize the efforts for speed, learning, and focus https://en.wikipedia.org/wiki/Startup_company
as possible (RDS, SQS, Elasticache, …) - All operations should be automated - Because the SRE team has been smaller than the service teams. Issues during growth 1. service infrastructures for each service were slightly different. - It was hard for both SRE members and service engineers to understand all service infrastructures because each infrastructure was slightly different. - We had to prepare for a deploy tool for each service. 2. RDBMS became a bottleneck Service Infrastructure on AWS
a framework to run distributed systems. - EKS is a managed K8s service in AWS - K8s resources are defined using Helmfile . - Before EKS, freee used EC2 and capistrano mainly. Modernization and standardization of infrastructure Image build pipeline - Docker build and docker push are executed on GitHub Actions self-hosted runner. Deployment - Argo CD
gradually switching to Amazon Aurora improved the stability of our service. - For some data, freee is using ElastiCache, OpenSearch Service, and DynamoDB to improve throughput. Storage Layer Of course, changing the middleware doesn't solve everything, so further improvements are ongoing at the application and infrastructure layers.
make a decision for service improvement. - But data pipeline was getting heavy because the amount of data was huge. - Especially masking data was heavy. - Replaced with AWS Glue - Query engine was also heavy - We are using both Athena and BigQuery Other SaaS Log files ProductDB RDS / Aurora Glue DataLake (parquet) ECS Athena BigQuery Batch BI tool
environment • It requires quite a bit of resources like CPU and memory ◦ High-end model of MacBook is expensive… • → As the number of engineers increases, the ease of setting up the development environment significantly impacts productivity Service Development Environment on AWS
development environment - Developers can log in the AWS console with SAML. - EC2 (Linux) - R-series instances are often used because devs need to launch lots of services. - Each service is running on Docker (docker-compose) - Docker images are pushd when the main branch is updated. - Connect ec2 via ssh or ssm - Visual Studio Remote Development is useful. - https://code.visualstudio.com/docs/remote/remote-o verview - Devs can also access with web browther via ssh port forwarding. Solution: Development environment on AWS
tax return and it's the peak season for the customer support team. The support team uses AWS WorkSpaces instead of procuring Windows PCs during the final tax return season. Business Operation Environment on AWS
servers Solution - Running Windows Server instances for Active Directory - Synchronizing accounts with IDaaS (OneLogin) to be able to single sign on each cloud service via SAML. - Managing client PCs using Group Policy in Windows Server - Running GlobalProtect EC2 instances bought in AWS marketplace Corporate Infrastructure on AWS By using AWS in this way, we can build the corporate infrastructure without having to maintain on-premises servers
It's totally acceptable to start with a light approach rather than setting up a grand system from the beginning - For example, Using ECS instead of EKS - Conversely, it's good to anticipate that there will be several opportunities to recreate your infrastructure. - It may be considered technical debt but it's natural for needs to change as phases shift. - It is necessary to be prepared to continue investing not only in feature development but also in infrastructure development to some extent. 2. B2B SaaS is well-suited to AWS's scaling mechanisms because it allows for predictable traffic patterns - Easy to set up autoscaling based on time schedule. key takeaways from operating freee(B2B SaaS)
each web-service provider - It does not depend on AWS. - Conversely, we can focus on service development by leveraging AWS's infrastructure. key takeaways from operating freee(B2B SaaS)