For Digital Marketers, no matter what niche your clients are in, they probably not the only player. Most likely, the market has already been occupied with a handful of big sharks already.
So before turning on any campaign, it’s critical to analyze competitor’s marketing strategies and understand what kind of offers customers are already exposed to.
In this article, I will show you how to hack your competitor’s online marketing funnel.
Among the various forms of funnels in the market, the organic content funnel usually is the first touchpoint.
The best way to understand it is to opt-in.
Great APIs are opinionated. In this note, I will share the practice we promote at Facebook of how to write an effective API.
At Facebook, we believe the API is written to be read. By looking at an API’s signature, engineers should understand how to use this API and the expected outcome.
API should be short…
After the pandemic hits, more and more software engineers are working from home or working remotely. Some companies/teams are even completely turning virtual.
FB allows employees to WFH every Wed for a long time. When the whole company turning into the mandatory working remotely mode in Mar/2020, I didn’t feel that much difference in the first two months.
However, after three months, things changed a little bit. Although working from home may seem like a great benefit, no more commute. There are many struggles that at-home engineers must face.
If you struggle with discipline and self-control, you probably need to…
People are impatient. When we visit a website and request for certain data, cache plays a critical role in terms of waiting time. In this blog, I will share an introduction of cache: what is it and how to implement.
A cache is a copy of frequently accessed data stores in Random Access Memory (RAM) hardware. Implementing caching in a web application means copying frequently accessed data from disk-based DB to RAM.
RAM-based hardware provides faster access than hard disk and capable of handling more requests. It helps the application to ensure low latency and high throughput. …
Scalability means the capability of the system to process increased workload while maintaining the same latency.
For example, if your system takes X seconds to respond to a user’s request. It should take the same amount of time to respond to each of the million concurrent user requests.
For a web application, there are 7common mistakes that can become a bottleneck and can hurt the scalability.
Inefficient, unstructured code has the potential to slow down the entire service in production. Specifically:
In my last story “Junior vs. Senior vs. Staff Engineer”, I uncovered the responsibilities for Junior-to-Staff level engineer. But they are not the complete picture of a SWE’s career ladder, and the top-notch tier is still missing, aka “Principal Engineer”. In companies like Facebook, Amazon, or Google, it maps to Level 7+ and its total compensation is around $800k a year.
In this blog, I will share my observations of “what does a principal engineer look like”.
In general, a principal engineer should be able to spot, drive and deliver an initiative with multi-team, organization-level impact.
To expand on that…
Bitcoin, Ethereum, Dogecoin, Shibacoin…
You probably heard of all these crazy “coins” and news about their huge market value rise & falls. You may want to stay away from investing in these cryptos, but as a professionals work on tech, it’s not a bad idea to understand a little bit more, such as the mainstream blockchain technology and the process of creating one.
In this article, I will walk you through a simple 3steps of creating your own coin without writing any code.
The idea of creating a coin is simple: deploy your “contract code” on a blockchain.
The React team recently introduced a major new feature “React Server Component”. It opens a new world for front-end engineers to build a performant app while writing less code.
Nowadays, numerous react apps provide rich experiences. But, these client-rendered apps still need to fetch & parse data from the server.
The data downloading roundtrip creates the performance bottleneck for apps and requires engineers to write more code.
For the static web page, which has no interaction, it’s a waste of resources to download JS source files and data from React component framework.
What if we have a React component supporting…
For any engineer working at a big corporate, building new features is only a part of the job. Another main part is making contributions to “Engineering Excellence(EE)”. EE also called “Better Engineering”, contains
All the efforts that improve the quality & efficiency of the product.
This responsibility is even higher priority if engineers work at an Infra team. In this note, I will share my experience of how we recognize the impact of “Engineering Excellence” in my daily operations.
Writing more tests is an obvious way to ensure the quality of code. …
Career progression is an evergreen topic for software engineers because it directly impacts income. In this note, I am going to share my personal perspective on the differences between Junior(E3–4), Senior(E5), and Staff(E6) engineers.
At this level, engineers focus mostly on demonstrating the coding capability and get familiar with engineering practices.
On the technical side, this level’s engineer should be able to:
On the “People Skill” side, there are not many…