Frequently Asked Questions
What types of contract jobs do we accept, and how do we conduct business?
Specialized hardware and software prototyping. These often involve building single or small run circuit boards combined with testing and support software. We have extensive experience in computer hardware, PCB, realtime operating systems and many other related areas.
Software only projects. Our experience with many operating systems and server environments such as Windows, MacOS, iOS and Linux, and many years of numerous programming languages gives us the technical chops we need to bid on many diverse projects.
A specific software project we have experience with is building and training AI assistants and AI Agents. AI assistants can be used for tech support, AI agents can automate almost anything on a computer or the internet.
Software legacy upgrades. These projects are usually software only, but require special expertise in porting and testing systems to verify compatibility as needed. We have 30+ years experience porting between 5 major operating systems and a dozen or more languages.
How we bid on contracts:
Our founders bring 30+ years of experience and a track record of delivering on-time, on-budget results. The following principles contribute to achieving these goals.
Our Process:
We welcome customer NDAs (Non-Disclosure Agreement) and are fully prepared to work under confidentiality agreements. We’re very familiar and protective of intellectual property rights, having been involved with publishing software and 5 patents over many decades.
We strongly prefer the customer to provide a comprehensive written specification. The spec should define the complete scope of the work, the customer expectations, and most importantly, the objective definition of job completion. We are happy work with customers to define the specification more tightly.
If the project includes enclosures, user interface or other customer facing items, we require specifications, drawings and sizes.
Why does REi need a complete specification? We have a reputation for delivering on-time, on-budget projects. A very precise spec lets us estimate accurately, and concentrate our time efficiently to deliver the product our customers require.
Handling Complexity:
What if the project is too complicated or too large to estimate easily? In that case, (for instance a very large legacy software port) we will recommend and quote cost for a 'Discovery Phase' engagement. While it may seem counterintuitive, investing in a discovery phase typically lowers the cost of the total project. In some cases, the discovery phase will determine that the project is not feasible, or must be created from scratch. Either way, you the customer are protected from cost overruns, and from projects with uncontrolled scope expansion—the kind that go on forever with no end in sight. Your company’s budget and our company’s reputation are both protected.
Time and materials. If your project is configured such that there’s no reasonable way to define a specification, we can arrange to work for “time and materials” charges. In that case, the project will be open ended until the customer or REi determines it’s either completed, or no longer feasible.
What if the customer comes up with further requirements after signing the contract? We will consider how we can best accommodate these requests, but they will be performed at extra cost, and usually extend the working time of the project.
AI Project requirements
AI projects typically start with digital training material such as PDFs that fully describe the domain in question.
User interface can be a window in an app, or an internet web page. Both would typically be behind a paywall.
The customer provides a list of at least 100 questions and answers to prove the AI can do it’s job. A percentage is set for success. Typically this is 80% to 85%, but we prefer 90% or above. Our most recent project, a tech support AI reached 97% accuracy.
The customer also makes available a human who is expert in the domain, for testing the AI and confirming success.
Legacy Modernization Projects
Legacy software ports require special preparation to estimate accurately and execute successfully. During discovery, we'll need to understand:
Do you have access to the complete source code?
Does the source code compile?
Do you have a working instance of the current system?
Do you have comprehensive input/output testing methods and data to verify the modernized system matches expected behavior?
Is someone available who understands both the codebase and the business logic it implements?
The answers to these questions significantly affect project scope, timeline, and risk. If some of these elements are missing, we can often work around them—but we need to know upfront.
Payment Terms
Payment terms are established during contract negotiation and typically include milestone-based payments tied to deliverables.
Upon final payment, customers receive full ownership of all project deliverables and source code, unless otherwise negotiated.
We guarantee our work. We're committed to your complete satisfaction. If we didn’t deliver some part of the contract and/or specification, please contact us within 90 days of delivery and we'll work with you to resolve it.

