Alayesanmi Femi
Lead Backend Engineer @ Mono
Ibadan, Nigeria
Actions
I'm a software engineer with a focus on backend engineering and cloud engineering. I have been in the payments industry for over 7 years building and leading technical teams. Being a certified AWS Developer Associate, I am an advocate for scalable and optimized systems while building on the cloud. i enjoy learning, knowledge sharing and providing mentorship with my experience whenever i can.
Links
Area of Expertise
Topics
Making the Most of Code Reviews: Team Leads and Engineers
The motivation behind this talk is to demystify methods (practises) for engineers and team leads to make the most of code reviews.
Engineers are smart people, however not just smart coders build solid software products. A collaborative and open-minded team of engineers build remarkable products; interestingly code reviews fosters this culture in engineering teams if done correctly and if not it can be seen as a total waste of time for software product releases.
Optimizing Serverless Applications: The Why and How?
Serverless applications are not new; they are simply applications running on a third-party fully managed resource on the cloud thereby allowing developers to focus completely on the business logic of an application without managing the servers where their code runs.
For this talk we will focus on AWS Lambda functions, which is a popular and very robust AWS service for building serverless applications. A very similar service on GCP are Cloud Functions. AWS Lambda is built to handle small or single tasks based on triggered events or an api call. The idea of a serverless application is to take the technical efforts (backups, uptime management and networking) required to run an application on a server, however it could have some unexpected or unwanted effects on the overall architecture of the application when the service (AWS Lambda) is not configured or managed properly in the cloud. Three major metrics to measure the efficiency of a serverless application are; Latency, Throughput and Cost.
From experience, these metrics can be drastically reduced to the nearest minimum thereby achieving a high level of efficiency when building serverless applications with AWS Lambda. I will be discussing few optimization techniques in this session, a few worth mentioning are:
1. Eliminate or reduce cold starts
Cold start is the boot time when a lambda function is initialized or needs to scale up. Cold starts can be expensive as they affect the cost of utilization and latency of the lambda function. This talk proposes to share few techniques explored from my experience with serverless applications are:
- Ahead of time code compilation (use binary or compiled files)
- Provision concurrency for resources required for your lambda
- Optimized dependency initialization (import only what you need)
- Abstract network connections or db connections
- Build with languages that handle concurrent request execution optimally with less memory allocations (NodeJS, Python and Go)
2 Memory and CPU Tuning
Memory in lambda is proportional to allocated cpu and this affects the cost of utilization because AWS bills lambda for the duration of the execution per time it is invoked. Deriving the most efficient (cost and execution time) memory allocation can be accurately achieved when with few analysis, in this talk I'll do a walkthrough on how AWS Lambda Power tuning can be helpful in this regard.
3. Proper Monitoring and Logging
This topic is mostly underrated but it is highly essential when building any application including serverless applications because it provides observability on what goes on during runtime and insight on what needs to be optimized. In this talk I will explain how AWS Cloudwatch and AWS X-ray are vital services for logging and monitoring in serverless applications.
Building Robust and Efficient Microservice Systems with gRPC
Few Interesting points about the topic:
1. gRPC (Google Remote Procedural Call) is a high performance communication framework built by Google.
2. It is open source and still in its early stages of adoption (would be nice to encourage contributions from people in the community while adopting the tool).
3. It Is a protocol using the latest network transport protocol HTTP/2
4. It is not language dependent (cross-platform).
5. Backend Engineers in the community would skill up for growth while having this knowledge under their belt as Tech companies using the microservice architecture are building with latest technologies like gRPC.
backend engineering
Please note that Sessionize is not responsible for the accuracy or validity of the data provided by speakers. If you suspect this profile to be fake or spam, please let us know.
Jump to top