Machine learning development in Miami
Fraud is the machine learning problem most Miami fintechs meet first, and it is an awkward one. Fraud is rare, so the data is lopsided. The labels arrive late, because a chargeback can land weeks after the transaction it belongs to. And patterns shift as soon as fraudsters notice what gets blocked.
We usually start with rules, because rules are explainable to a bank partner and they give you a baseline to beat. Then we build the features and the labelled history a model needs, train something simple enough to understand, and run it in shadow beside the rules until the numbers justify switching. Every score is stored with the features that produced it, so when a good customer is declined you can see why.
Miami's software buyers tend to face south. Many of the companies that set up here in the last few years came for the same reason: it is where a US-incorporated business can sit next to its Latin American customers, investors and staff. Cross-border payments, remittances, neobanks, crypto infrastructure and the US arms of Latin American companies make up a large part of the local technology market, alongside real estate, hospitality and trade. The systems they need are rarely built for one country.
That shapes the work. Money movement is the core of the product rather than a feature bolted onto it: idempotent payment calls, a double-entry ledger, reconciliation jobs that compare your records against a partner's settlement file every night and flag the difference. The product has to handle Spanish and Brazilian Portuguese properly, validate local ID numbers and address formats, and settle through rails such as Pix in Brazil and SPEI in Mexico as well as cards. Crypto products add wallets, chain indexers and custody integrations, and the same principle applies: your database has to agree with the chain, and when it drifts, somebody needs a report saying where. Real estate, hospitality and trade bring their own version of the problem, usually a workbook that runs the business and quietly disagrees with its copies.
The hiring market has moved with the migration of finance and technology firms from New York and California. Built In puts the average base salary for a software engineer in Miami at around $145,000, and engineers who are bilingual and have shipped payments work are the hardest seat to fill. That is the seat we fill for a defined build: a payments integration, a reconciliation system, a second-country launch, or the months while a permanent hire is found. Work starts with a fixed-price two-week piece, and the code belongs to you from the first commit.
We move our working day for Florida. Four hours of every working day overlap with your morning in Eastern time, stand-up included, so calls, code review and decisions happen live with the engineer who writes the code. Everything else is written down where you already work, and runbooks and architecture notes are written as we go, so the next engineer who joins can read how the money moves.
We are the right fit for a defined build: a payments integration, a reconciliation system, a second-country launch. Senior capacity starts within days, the first piece is a fixed-price two-week engagement, and we can cover the months while a permanent hire is found. Agencies serving Miami's fintech, hospitality and retail brands can put the work under their own name.
Four ways this arrives.
Someone got good results on a laptop and nobody can reproduce them. We turn it into a training pipeline with pinned data and versioned artefacts, put a serving endpoint in front of it, and record what it was evaluated on so the next version can be compared.
Hundreds of conditions routing tickets or flagging risky orders, each added after an incident. We measure what the rules get wrong on your labelled history, then test whether a classifier beats them. Sometimes the answer is fewer, better rules, and we say so.
Demand, load or staffing estimates that miss often enough to be ignored. We start with a plain seasonal baseline, backtest against the periods you actually plan around, and add complexity only where it beats that baseline on those periods.
Duplicate records, recurring faults, near-identical products under different names. Embeddings group text by meaning where keyword matching cannot, and we build the screen that lets a person correct a group rather than trust it blindly.
Repeat-fault detection that began as UMAP and HDBSCAN over 33,000 work orders and shipped as nightly incremental clustering on the same embedding model.
Read the write-up →Asked by Miami teams.
How do you work with teams in Miami?+
We are in Bengaluru and move our working day for Florida, so four hours of every working day overlap with your morning in Eastern time, stand-up included. Calls, code review and decisions happen in that window. Everything else is written down in your own tools, whether that is Slack, GitHub or Linear, and the person on every call is the engineer who writes the code.
Can you build for Latin American markets as well as the US?+
Yes, and it is more than translation. Mexican and Argentinian Spanish differ, Brazilian Portuguese is its own language, and ID numbers, address formats, currencies and instalment payments all change by country. We design localisation into the first component, format money through the platform's own internationalisation tools, and integrate the payments provider you have chosen, with room for a second provider and local rails such as Pix and SPEI.
How does your rate compare to hiring in Miami?+
Built In puts the average base salary for a software engineer in Miami at about $145,000, before equity and benefits. Our published rate is $35/hour, or $5,400 a month for an embedded engineer, with a $5,000 minimum. There is no recruiting time and no employment overhead, and work starts within days of the call. The first piece is a fixed-price two-week engagement at $2,800, so you judge us on working code.
Can you work white-label for a Miami agency?+
Yes. Miami agencies regularly win fintech, hospitality and ecommerce projects that need more engineering than the in-house team can take on at once. We work under your name as part of your team, so your client deals with you and the work arrives as yours. The NDA comes before any specifics, the code belongs to the client from the first commit, and runbooks and architecture notes are written as we go.
Do we need machine learning, or is a rules engine enough?+
Often a rules engine is enough, and it is cheaper to run, explain and audit. If the people who make the decision today can write it down, write it down. A model earns its place when the rules keep multiplying, the inputs are messy text or images, or the pattern shifts faster than anyone can edit the rules. We check against your history before recommending either.
Why not just call a hosted model API?+
Sometimes you should. With low volume, messy language and no labelled data, a hosted model and a good prompt ship quickly. A trained model wins when per-call pricing starts to hurt at your volume, when latency matters, when data cannot leave your systems, or when you have labelled examples a small model can learn from. We price both paths before you commit.
How much data do we need?+
For classification, usually fewer labelled examples than people fear, and embeddings can group text with no labels at all. Forecasting is the opposite: you need enough history to cover the cycles you plan around, and a single year says little about a yearly pattern. We give you an answer after looking at your data, not before.
What happens when the model gets worse?+
It will, because the world it learned from changes. We log inputs and predictions, compare them with outcomes as they arrive, and alert when accuracy or the input mix drifts past a threshold you agreed. Retraining is a scripted pipeline with an evaluation gate, so a new model replaces the old one only when it does better on the same test set.
Can you build a recommendation system?+
Yes, and we would start without a learned model. Co-occurrence and embedding similarity, served from Postgres or a vector index, beat a most-popular list for most catalogues and are easy to debug. A learned ranker comes after that, once you have enough interaction data to train and evaluate one. A learned ranker is something we build from our work with embeddings and clustering, starting from a simple baseline you can measure it against.