As we all know, a tech meetup is an event where individuals from the technology industry gather to share their experiences and knowledge, network, and learn from industry experts. A tech meetup is a gathering of individuals interested in technology, typically centered around a specific topic, industry, or technology stack. These events provide a platform for people to network, share knowledge, collaborate, and stay updated on the latest developments in the tech field. Tech meetups are the best way to jumpstart practical knowledge and insight for those who are new (fresh graduates, career shifters) and are interested in diving into this industry. The tech industry is diverse and encompasses a wide range of fields and disciplines, so before you attend, just make sure you attend the right field of interest.
These events aim to share, educate, network, and provide a unique platform for engagement and growth. Likha-iT Inc. and freee k.k. decided to host our version of tech meetup, and what will make our events unique is the diverse topics and members of the Global Engineering Team from different parts of the world: Bangladesh, China, France, India, Indonesia, Japan, Kenya, Nepal, Philippines, Taiwan, and the United States.
With the Global Engineering Team’s Mission in mind:
“Successfully establish a scalable product team to deliver better products faster, create successful products with world-class development practices, and drive freee’s globalization and discontinuous growth.”
The mission of the Global Engineering Team aligns with the objectives of tech meetups by leveraging the events as a platform for knowledge exchange, networking, and exposure to industry best practices. Participating in tech meetups can empower the team to achieve its mission more effectively by staying connected with the broader tech community and leveraging external insights to enhance internal practices.
We shall contribute to the tech community by hosting a series of events, lightning talks, and workshops with a mix of both internal and external presenters. And last November 23, 2023, we opened our door for our first-ever Tech Meetup (Event #1).
Speaker 1: Tatsuya Hirase (8+ years of experience)
Tach’s presentation gave us a top-level view of freee’s ecosystem of services and shared his experiences on how quickly it was for his team to develop and release a new service.
For context, as of today, freee has developed 22 services since 2013. Most freee’s customer profiles are SMBs with 400,000+ paying customers as of March 2023.
The mission of freee is to “Empower small businesses to take center stage.” To achieve the mission, freee has products supporting various business stages.
Tach’s team is in charge of “freee Foundation.” A service that makes the process of registering a company easier by helping file documents to local authorities. The latest product this team has developed is “freee subsidy”, which allows users to look for government subsidies by keyword or location of their business. His team with Gerard has developed and released this product in 2 months, including planning, proof of concept, and implementation, which is the shortest development period as of the release of the product.
Additionally, besides Tach and Gerard’s talk, here are other practices that contribute to delivering products to market in the shortest time:
Customer-Centric approach – understanding customer needs is crucial for successful service development. freee’s process of regularly gathering feedback and tailoring services to meet evolving demands effectively.
Agile culture – with an agile culture, teams can respond quickly to changes in the market. Development teams embrace the product mindset, and continuous improvement can facilitate the development of new services.
Speaker 2: Gerard Cruz (9+ years of experience)
Part 2 is a deep dive into the technology stack, a continuation of Tach’s presentation, and how to get started when building an app from the ground up the freee way. Introducing general concepts and practices when bootstrapping a new product.
The diagram shared with this presentation outlines the components of a software system architecture with a clear separation of concerns and scalability in mind.
Application code scaffold: The base structure of the application’s code.
Design system: The visual and functional design elements are applied to the front end.
Microservice for authentication: A separate service dedicated to user authentication.
Internal libraries: Internal libraries used across the application, likely shared between Frontend and Backend.
API Infrastructure code scaffold: The underlying architecture setup includes EKS, ALB, and RDS.
For deployment and integration, there is already a well-established workflow in freee and GitHub actions, and there are actions for many purposes, such as ArgoCD. ArgoCD is the tool used in freee and also Gerard’s favorite.
Speaker 3: Adrian Co (12+ years of experience)
Adrian is currently a Team lead at Marketplacer; he is also a full-stack engineer with a diverse background in front-end and back-end technologies and a top contributor to the ruby community.
Today he shared with the community his take on the relevance of Ruby and the Rails framework in today’s world through his experiences as an early user of the Rails framework up to the present.
His best points about the framework are ActiveRecord and ActionController as for pain points experienced at his previous company, Challonge. Because the framework is Monolith, the application contains all its components and functionality in one codebase. So everything related to Challonge is inside one repository. By migrating to a containerized environment using Docker that was managed via GCP, they have significantly reduced the cost of operating the entire stack for Challonge to about $8k USD per month.
Monoliths can be a pragmatic choice for smaller projects or when simplicity is a priority, while microservices offer more flexibility and scalability for larger and more complex applications. So at the end of the day, just like any technology, Rails has its advantages and disadvantages, and the suitability of the framework depends on the specific needs and goals of a project.
Thank you to the speakers who dedicated the evening to the community. Tach came all the way from Japan to give his talk, and we will do the same for most of the events.
My takeaway is that corporate environments often come with a more established infrastructure and processes, but even though freee has maintained flexibility so that the engineers have the opportunity for creativity, At the end of the day, environments should recognize the importance of continuous improvement and have different strategies for achieving it with combined approaches with structures, distinct organizational cultures, and resources.
Watch out for our upcoming events. Join our Connpass page to be updated with the next events.