Summary
Coding Pixel is a web and mobile development company, Top Rated on Upwork with more than $2M delivered over roughly 15 years. We propose to deliver the Loan Officer portal in seven fixed-price milestones, integrating only through approved Reidy APIs. We will not recreate the matching engine, ranking logic, or pricing rules. The portal uses them.
Our schedule is built around one honest constraint: several changes to existing Reidy APIs must land before the portal work that depends on them can be completed. M0 turns each of those into a dated dependency with an owner. With those dates met, the core pilot (M1 to M4) releases on November 30, 2026, followed by apprAIser (M5) and final handover (M6) in December. If a dependency slips, the schedule section describes the smallest usable pilot we can still deliver on November 30.
Proposed team
All six people are Coding Pixel staff. The named lead, architect, developers, and QA owner stay on the project for its full duration and will not be replaced without your written approval. The team is based in Pakistan and works a daily overlap of 9:00 AM to 3:00 PM US Central, Monday to Friday, for standups, reviews, and decisions.
Abubakar Butt
Co-founder of Coding Pixel. Your single point of contact for scope, change control, weekly demos, milestone packages, and escalation.
Abdullah Ali
M0 integration design and API contract, architecture decisions, PR standards, and final technical review of every pull request.
Haseeb Shams
Tenant isolation and permissions, seat and session enforcement, submission and fee ledger services, migrations and rollback plans.
Qasim Fazal
Test plan per milestone, automated cross-organization and disclosure tests, public-workflow regression coverage, acceptance evidence.
Abdul Momin
Portal screens, client profiles, borrower intake, CSV import, and scenarios.
Abdul Hadi
API integration layer, documents, submission workflow, and apprAIser.
Holiday coverage: the team works through US Thanksgiving week (Nov 23 to 27) to protect the pilot. Pakistan's public holiday on Monday, November 9 is covered by rotating staff so reviews and standups continue. No planned leave for named team members between kickoff and December 23.
Relevant experience
What our team actually did on each project, with emphasis on keeping organizations' data separate and integrating through APIs.
RaiseForward
raiseforward.orgMulti-organization fundraising platform built for Moolah Fundraising to replace a third-party platform charging a percentage of every donation. Serves around 80 organizations.
- Our role: architecture, UX, full-stack build in React and Node.js, and ongoing maintenance, which we still perform.
- Role-based access across system administrator, organization administrator, group leader, participant, and donor, with each organization seeing only its own campaigns, rosters, and reporting.
- Bulk roster upload with administrator approval, Stripe payments, per-organization reporting, and an architecture ready to license to other organizations as SaaS.
RentRideLocal
rentridelocal.comA rental booking platform that began with a single shop and expanded into a multi-shop marketplace.
- Our role: product scoping, UX, and full build, including the multi-shop phase.
- Each shop manages its own inventory, availability, bookings, delivery radius, and fees in its own portal, isolated from other shops, with a super-administrator layer for verification and oversight.
- Payment rules enforced server-side: full payment at booking, tokenized cards kept for late fees and damage, and card removal blocked during an active rental.
LegatiPro
legatipro.comProfessional marketplace, formerly DiversePro, on web and mobile.
- Our role: built the web and mobile products against a C#/.NET API documented in Swagger, running on AWS and SQL.
- Multiple user types with distinct permissions, free and premium subscription tiers with gated features, admin dashboards, and account sync between web and mobile.
- Integrations: Stripe, Algolia search, Twilio SMS, Mailgun email, and Cloudinary media.
What M0 Discovery delivers
M0 is planning only, with no production code. Each item arrives in a shared folder with a revision date and a named Reidy approver, and is written to be used during the build, not filed away.
- API integration plan
- Review of current APIs for authentication, profiles, documents, matching, submissions, TC workflow, and pricing. Gaps, dependencies, and risks, each with an owner and a date.
- Versioned API contract
- OpenAPI specification with schemas, identity and permission requirements, validation errors, safe retries, pagination, match timestamps, and examples. Protected (pre-submission) and disclosed responses documented separately.
- Requested API changes
- Each change with its purpose, the milestone that depends on it, and the date it is needed.
- Permission and tenant model
- Role and permission matrix, delegated client access, seat and concurrent-session policy, and plan-tier entitlements. A first draft is at the end of this proposal.
- Clickable screen flows
- Figma prototypes for Loan Officer, organization administrator, Reidy TC, and Reidy administrator, on desktop and mobile, including loading, empty, and error states.
- Data model and release plan
- Portal data model, migrations, existing-data backfill, deployment order, and a rollback approach that keeps borrower records and public-channel attribution intact.
- Performance and load targets
- Targets with test-data size, concurrent users, and infrastructure assumptions, reporting portal response time separately from engine time.
- Test strategy and acceptance scenarios
- Automated test plan, the exact acceptance scenarios for M1 to M6, and proposed defect severity definitions for your approval.
- Decision log
- Every open business rule (seat proration, waivers, duplicate rules, freshness defaults, fee edge cases) with the decision needed and the date.
- Revised schedule
- Milestone plan, critical path, and a responsibility list for both teams.
Delivery approach
How we integrate
- Contract first. We build portal features against the approved API contract, using mocks where an API change is still pending, so work continues while Reidy delivers changes.
- Your engine decides. Reidy APIs are the only source of matching, eligibility, ranking categories, and pricing. The portal displays engine decisions and never re-computes them.
- Server-side controls. Tenant isolation, seat attribution, plan entitlements, and lender-disclosure rules are enforced on every route, document link, export, notification, and background job. Hiding things in the interface is never the control.
- Every rule has a test. Cross-organization denial, delegated client access, pre-submission disclosure, borrower signature separation, pricing, and idempotent submission retries.
Code and non-code delivery
- Code, migrations, and configuration arrive as pull requests to your repository with a change summary and implementation notes. Builds, linting, and tests pass before we request review.
- A weekly staging demo inside the overlap window, plus a demo script or recording in every milestone package.
- No changes to the public app or website flows without approval. New behavior ships behind configuration flags where practical, with regression tests for the existing public workflow.
- Keyboard navigation, validation, and recovery from failed API requests are part of every screen's definition of done.
- Defects found in review are fixed within the milestone price, and 30 days of defect correction follow final acceptance.
- During pilot testing: critical defects answered within 4 business hours in the overlap window, with a fix or workaround within 1 business day. High-severity defects fixed within 2 business days. Reidy determines severity.
- M6 handover includes runbooks, API documentation, a data dictionary, a configuration inventory, admin guidance, and a knowledge-transfer session, so your team can build, deploy, troubleshoot, and make a minor change without us.
Communication and change control
- A shared Slack or Teams channel, a short daily standup in the overlap window, and a weekly demo.
- A written status every Friday: progress by milestone, risks, and decisions needed from Reidy with dates.
- Any request outside an approved milestone is written up with scope, price, and schedule impact. No work starts until you approve it in writing.
Security, data handling, and IP
- Every team member signs an NDA and an IP assignment agreement supporting Reidy's ownership terms before receiving access. We waive moral rights to the extent the law allows.
- We work only in Reidy-owned repositories, cloud environments, and accounts, with MFA and least-privilege access. All access is handed back or revoked at handover.
- No borrower or financial data on local machines. Development and staging use synthetic or Reidy-approved test data. Sensitive financial fields stay out of routine logs, and secrets stay in your secrets manager.
- Reidy data is used only for this project. In M0 we disclose every development tool we use, including any AI coding assistants, for your approval, and no borrower or financial data is ever entered into them.
- We notify Reidy within 24 hours of any suspected unauthorized access, loss, or disclosure.
- We bring no proprietary pre-existing components. Every open-source dependency is pinned, scanned for known critical vulnerabilities, and listed with its license in each milestone package.
Pricing
All prices are fixed in USD, funded per milestone in Upwork escrow, and released on your written approval. Hours are our internal estimate at a blended $75 per hour, shown for transparency. Select the options you want to see the total update.
Payment conditions and exclusions
- Each milestone is paid only on your written approval. We request a 5 business-day review window per milestone package to keep the schedule predictable.
- Quote valid for 30 days. Dates assume kickoff on Monday, October 5, 2026 and shift day-for-day with a later start.
- The retainer covers fixes, minor enhancements, dependency and security updates, and monitoring. Unused hours do not roll over, extra hours are $75 with your approval, and either party can end it with 30 days' notice.
- Excluded unless added by written change order: changes to Reidy's backend, database, or APIs; third-party subscription and usage costs; hosting and cloud costs; legal and compliance copy.
- We charge no third-party recurring costs. All accounts are owned by Reidy. Payment processor fees and CRM plan costs apply only if those options are selected.
Schedule and critical path
The critical path runs through M0 approval and the API changes listed under what we need. After M0 the milestones overlap: permission work (M1) starts first, portal screens (M2) follow a week later against the approved contract, and matching (M3) and submission (M4) build on both. Each milestone is still submitted and approved on its own.
If a dependency slips
- Portal work that depends on a late API change is already built and tested against the contract. Only the integration and its verification shift, day-for-day.
- The smallest usable pilot: M1, M2, and M3 in full, plus a submission that creates a TC ticket with a frozen snapshot and a manual fee record. Fee reconciliation reports and CSV exports would move into December with no change in total price.
- apprAIser (M5) is not part of the November 30 pilot, which keeps the pilot's critical path clear.
Key risks and how we manage them
| Risk | How we manage it |
|---|---|
| API changes arrive late | Contract-first development with mocks, dependency dates agreed in M0, day-for-day schedule shift, and the fallback pilot above. |
| Data visible across organizations | Server-side enforcement on every route and job, automated cross-organization tests on every pull request, and QA sign-off before a milestone is submitted. |
| Lender identity leaks before submission | A dedicated disclosure test suite covering API responses, errors, exports, notifications, and document metadata, not only the screens. |
| Regression in the public app | No public-flow changes without approval, regression tests, staged deployment, and a rehearsed rollback plan. |
| Open business rules expand scope | A dated decision log in M0. Anything decided later goes through a written change order. |
| Compressed November timeline | Six-person team, overlapping milestones, weekly demos that surface problems early, and work through Thanksgiving week. |
What we need from Reidy
| Item | Purpose | Needed by |
|---|---|---|
| NDA, API documentation, repository and staging access | Start M0 review and set up delivery | Oct 5 |
| Reidy technical lead for three M0 workshops | Review APIs, agree the contract and change list | Oct 5 to 14 |
| UI conventions or design system, test organization branding | Screen flows that match your approved UI | Oct 5 |
| Decisions: session policy, seat proration, visibility, duplicates, range widths, fee rules | Required for M0 approval | Oct 20 |
| API change: deal API identifies acting LO, client, organization, borrower | M1 and M2 attribution and delegated access | Oct 28 |
| API change: TC APIs enforce assignment policy | M1 TC assignment | Oct 28 |
| API change: pricing APIs return channel pricing policy | M3 estimates and snapshots | Nov 2 |
| Matching API support for protected, range-based responses | M3 lender-disclosure controls | Nov 2 |
| Disclaimer text, borrower notices, retention rules | M2 intake and M3 labels | Nov 2 |
| API change: selection and submission support delegated LO permissions | M4 submission without making LOs Buyers | Nov 9 |
| API change: borrower signing authority separate from LO submission | M4 signature separation | Nov 9 |
| Pilot roster, test data, lender participation for funding confirmation | Pilot acceptance testing | Nov 16 |
| apprAIser API documentation and test access | M5 integration | Nov 23 |
Questions for M0 kickoff
- The SOW excludes Reidy backend and database changes unless assigned in writing, while M1 includes database migrations and backend authorization, and CSV imports are stored in your backend. Will our team write this code inside your existing services, or will your team make those changes while we build the portal? Our pricing assumes we implement the M1 permission and seat logic, and changes to your existing APIs stay with Reidy.
- Are the current APIs documented and stable enough for external integration, or does M0 include defining those contracts?
- Which frontend framework and hosting setup does the public app use, so the portal follows the same conventions?
- Is there a staging environment with realistic lender programs for match testing?
Draft role and permission matrix
A starting point drawn from the SOW, to be validated and completed in M0. "Own org" means the organization the user belongs to. Loan Officer access to clients follows the delegation rules agreed in M0.
| Capability | Reidy admin | Reidy TC | Org admin | Loan officer | Borrower invitee |
|---|