An alternative method for hourly billing

Let’s review yesterday’s scenario, in which my role was Solution Architect, and my responsibilities were:

  • Meet with the client and understand their requirements
  • Translate them into technical specifications and document them
  • Communicate with the internal team
  • Support as needed

For this work, I billed by the hour, up to an agreed upon maximum of 20 hours per week.… Read the rest

Hourly billing really sucks

About 6 months ago, I chose to work with a Salesforce agency that billed by the hour. At the time, I needed the opportunity and it was a fun project, so I accepted a reasonable hourly rate.

Fast forward to today, and it turns out I’m not compatible with hourly billing anymore, and the agency let me go.… Read the rest

Keeping your mind sharp

I recall an article from several years ago about mobile phone usage. The article basically said that low-income families now have access to the same information as high-income families.

That is to say, they both have a mobile phone capable of accessing this information.… Read the rest

The need for downtime

When I started writing these emails, about 2.5 years ago, I was inspired by my business coach. He’s been writing 7 emails a week for years, and I figured if he can do it, so can I.

For me however, 7 is too much, as I appreciate having some down time.… Read the rest

Travelling to warmer weather

You have numerous advantages as a Salesforce digital nomad. Most importantly, you can choose where and when you live. And when given that optionality, warmer weather is usually beneficial.

Neuroscientists have discovered that sunlight, temperature, and seasonal cues can change your memory, sleep patterns, appetite, and even risk tolerance.… Read the rest

It’s war time

Everyone once in a while, your Salesforce project will go sideways. The solution isn’t working, the deadline is looming, and your client is frustrated.

So it’s all hands on deck. Time to get organized as a team and solve all remaining issues.… Read the rest

AI-first products?

While at DreamOle last week, a term was used that I’ve never heard before. To paraphrase, the person said, “Product owners want AI-first products”.

There are several prominent “first” terms.

For example, the term “mobile-first products” is familiar to most. If not, at a certain moment in the past, there was a big shift to ensure all new websites and applications were responsive.… Read the rest

Flow formulas are cool

Formulas in Salesforce flows are really cool. They are a unique type of variable, one that has multiple purposes.

Here’s one of my favorite methods to show just how cool they are: formulas are only evaluated at the moment they are used.… Read the rest

DreamOle 2025 Overview

Here are my takeaways from this year’s Dream Ole in Zaragoza, Spain.

It’s all about Agentforce
Apparently you cannot escape it. It’s not just prevalent in North America, but in Europe too. The opening keynote speaker was a product manager of Agentforce and we had a chance to chat after her presentation.… Read the rest

Attending DreamOle 2025

It’s a little late to mention, but I’m attending DreamOle in Zaragoza, Spain tomorrow.

If you’re also attending, look out for me and I’ll be happy to meet you.

Here are the sessions in my agenda:

  • Opening keynote
  • Salesforce enhanced messaging and WhatsApp
  • Customising record level security
  • Demo battle
  • Key architecture anti-patterns
  • Closing keynote
  • After party

They are offering an Agentforce Certification Bootcamp, in which you can obtain an Agentforce cert, but that hasn’t piqued my interest.… Read the rest

External Id vs Unique field attributes

When creating custom fields, there are two settings most people ignore: External Id and Unique. When used properly, these boolean settings can be useful.

By setting a field as an External Id, you’re telling Salesforce that this field represents an Id field from a system outside of Salesforce.… Read the rest

The buck stops with you

As a Salesforce consultant, sometimes you play the role of architect. That is to say, not only are you implementing the project, you’re also designing it.

The moment you shift into this role, your role increases dramatically.

The main one being, whatever you design, you are responsible for.… Read the rest

Adding contingencies to projects

There probably isn’t a single Salesforce project that has ever gone perfectly to plan.

Just like the sayings, “If you don’t make any mistakes, you’re probably don’t make anything”, and Mike Tyson’s popular one, “Everyone has a plan until you get punched in the face”.… Read the rest

Questions to ask during a reverse demo

It’s not uncommon for one of your projects to involve a migration from a legacy system to Salesforce. After all, Salesforce is still the coolest kid on the block.

During the discovery phase of such a project, the client typically demos the legacy system.… Read the rest

Two ears, one mouth

As a Salesforce consultant, it’s important to listen more than you speak.

Sure, you may be more knowledgeable about Salesforce than your peers, or everyone on the call. But that doesn’t mean you need to show off.

We all have something to learn from others.… Read the rest

Differences between passing an id vs the entire record

Let’s say you have a record-triggered flow that calls a subflow. Sometimes you need to pass variables to the subflow.
If you need to pass a record to the subflow, you have two options:

  1. Pass the just Id as a text variable
  2. Pass the entire record

While both get the job done, I usually recommend option 1.… Read the rest

Don’t hardcode URLs in flows

A LinkedIn article was published yesterday about hardcoding URLs in flows. The author is trying to solve a problem involving URLs that change depending on the environment.

For example, let’s say you have a screen flow that creates an account, and you want to display a link to the newly created account in the last step.… Read the rest

The dinner date test vs the beer test

As an independent Salesforce consultant, working with the “right” clients is critical.

So when meeting clients for the first time, I quickly try to assess how well we would work together. There are a few approaches on how this can be done.… Read the rest

Object prefixes

Every once in a while, when debugging flows, you may come across an error such as “Unable to obtain exclusive access to this record or 1 records: 003OL00000EMzT8YAL”

At face value, this error message doesn’t seem to tell you very much.… Read the rest

How to lock a record and why you’d want to

Record locking is when you inform Salesforce you want to lock a record for a certain period of time. Your process becomes the only one that can access that record. Any other processes that attempt to access it at the same time receive an error.… Read the rest

How to prevent automatic flow bulkification

How that we’ve covered flow bulkification and flow interviews, we can tie things together. As mentioned, sometimes Salesforce automagically bulkifies flow interviews.

Most of the time, this is a good thing. Sometimes it’s not so good.

For example, imagine a flow that gets and updates a custom setting.… Read the rest

What are flow interviews?

In Salesforce, there are two flow parts: the building part and the execution part. Here are some interesting things to know about the latter.

Each time a flow executes, Salesforce creates an instance of the flow. The instance is a standalone unique copy of the flow, running within a specific context.… Read the rest

What is flow bulkification?

Most good Salesforce consultants are already familiar with good flow practices. Things like

  • Don’t create/update/delete records (DML operations) within loops
  • Don’t do multiple gets of the same record or related records
  • Don’t update the triggering record in an after-save flow
  • Etc.
Read the rest

Recharging your perspective

One great way to reflect on your Salesforce career is to take a break.

It doesn’t need to be something dramatic like a sabbatical or extended vacation. But time away from the keyboard, the community, and the ecosystem can be very helpful.… Read the rest

Reflectng on your Salesforce career and beyond

Every once in a while, it’s important to reflect on your career’s trajectory.

Some questions to ask yourself can be

  • Are you happy as a Salesforce consultant?
  • Are you happy with the current state of Salesforce and where they are heading?
Read the rest

Salesforce’s Q4 2025 observations

Every once in a while, it’s interesting to see how our parent company is doing. You know, the big one that we all depend on for our livelihood.

This income chart was recently released:

It’s interesting to notice a few things:

  1. Service income is greater than Sales.
Read the rest

UI vs. object: When to require fields

When creating required fields on a standard or custom object, you have two options:

  1. Make them required at the object-level
  2. Make them required at the UI-level

In most cases, the latter is a better option. Why?

When fields are required at an object level, they are *always* required, regardless of the source.… Read the rest