This page describes many of the ways I can serve you. You will
recognize most of the terms as elements of technical projects or
types activities you need in your business. I have organized the
list into categories to help you identify something close to your
requirement. Of course, most projects need many elements in my list,
and you may need a broad array of these services to successfully
complete your program.
When considering a decision concerning some course of action,
executives, business owners, entrepreneurs, attorneys, and investors
often look outside themselves and their organizations for a
professional opinion. In this role, I can either meet with you and
discuss your situation in a relatively causal manner, or I can study
your issues more thoroughly, and provide a formal report.
Occasionally, you may need to decide the usefulness or quality of
a technology or technology company, but you lack the specific
expertise to assess the issue. You may want a company to do
something for you, or you want to purchase a company, or you may
just be considering a general technical approach to some aspect of
your business. I can serve as your technical advisor, research the
situation, and recommend a course of action.
Companies, especially startups and smaller ones, occasionally
need to meet with potential vendors, customers, or regulators, but
lack the technical expertise required for the situation. I can serve
as your technical representative. I can assist you before, during,
and after the encounter, and I can follow up with all of the parties
until the issues are resolved.
The plan is one of the most important aspects of any project.
When you create your project plan, you consider everything you must
do to complete the project successfully. The more issues you
identify before you begin work, the fewer time- and money-wasting
surprises you endure later. If you accurately and realistically
estimate the resources, time, and money you will need, you
significantly increase your chance of success. I can work with you
or with your group of planners to identify tasks, schedule the
project, identify resources, and create a budget.
If all projects proceeded according to the original plan and all
project plans were perfect, we could go on vacation until they were
finished. Of course, we all know that wouldn't work. Plans aren't
perfect; things go wrong. Unanticipated issues arise. The playing
field changes. The final objective changes. We are racing along a
changing path towards a moving target, and we need someone, the
project manager, to hold the reins. The project manager must
constantly assess the status of the work in progress, the allocation
of resources, the schedule, and the budget. In addition, the manager
must anticipate problems, and change the course of the project with
one idea in mind: hit the target as soon as possible. I manage my
projects, and I can manage yours.
All good project plans include milestones, points where we
briefly pause to celebrate our successes, sound alarms about
problems, and rethink our project's objectives and plans. You may
hold one meeting to review a relatively small project, or a series
of presentations, meetings, and brainstorming sessions for a larger
one. Your project team, customers, management, and oftentimes,
outside reviewers, come together to assess the health of the project
and discuss how to reforge the plan for the next leg of the journey.
Call me if you would like an objective review of your project from
an outside perspective.
Projects do not suddenly fail. If you watch carefully, you can
see signs of problems in your program long before a failure, and if
you act quickly, you can change course and prevent a potential
catastrophe. Sometimes the project is moving too slowly but you
can't put your finger on the problem. An outside troubleshooter may
see things you cannot. As an outside observer, I've seen project
managers unqualified for the task, political or personal disputes
disrupting teamwork, unqualified vendors, and plain, old, unforeseen
technical challenges. I've also seen inadequate estimation of time,
money, and resources at the beginning of projects, and a reluctance
to accept changes in the project's requirements as the job unfolds.
These problems can be fixed if you identify the problems early,
accept the need to change, and alter your course of action. Call me
if your project is stalling or veering off course. I can help you
get back on the track.
If you must hire technical people but do not have background to
assess candidates, I can meet with you to discuss your staffing
needs, interview the candidates, and give you my opinion about how
the candidates fit your requirements. I have done this for small
startup companies hiring technical staff for the first time, and for
large companies looking for specific expertise.
Newly graduated engineers possess the basic tools to perform in
their profession, but they have a lot to learn about how to work in
the industrial environment. When I was young, I was fortunate to
work with some experienced engineers who showed me the ropes and
helped me with the transition from student to engineer. I have also
had the good fortune to work with new engineers while consulting,
and my role as mentor has been as rewarding as my roles as manager
and engineer. If you have inexperienced engineers who need to
produce results without the benefit of an experienced mentor, I can
help. I can advise them on their courses of action, help them with
the details of getting the job done, and give them overall advice
and support. The project will be completed faster, and your new
engineers will quickly develop into experienced, productive
professionals.
If you have an idea for a product, process, or system, I can
perform a preliminary feasibility study. I can research components
and processes, create theoretical models, and perform basic
practical experiments to help you decide if you want to go forward
with a more costly development project.
Before you decide how to develop a device, process, or system,
consider creating several preliminary designs. You may have one
design in mind, but want to see some practical alternatives. You may
want to look at range of designs that offer trade-offs between cost,
function, and appearance. I can assemble a team to develop design
concepts. You can then use these designs as a tool in your decision
process.
Before you begin a project, you want to know how much it will
cost. To develop a realistic estimate of the cost, you need a
description of the project's requirements, a preliminary design, and
a preliminary task list. All of these items can be developed as
preliminary studies, and their results can be viewed as the first
phase of your project. I can work with you on the preliminary work,
and develop a cost and schedule model.
Many system and process development projects benefit from a
theoretical study using mathematical models. It is a relatively low
cost way to examine different approaches to your design problem, and
you can acquire reasonable expectations about the product's ultimate
performance. When useful and desirable approaches are found, you
have a blueprint for building the real product and a method to
compare performance later. I have extensive experience with
mathematical modeling of dynamic systems in diverse fields such as
control systems, optical systems, electromechanical devices,
communications, digital and analog electronics, and processes, and I
can apply my experience to your ideas.
The development of a new product begins when you recognize a need
for it, whether the need exists in society in general, as a consumer
product, or in some specialized niche in business, technology, or
industry, as commercial, medical, or industrial products. After you
recognize the need, you define the concept for the product. What
will it do? How will it look? What size will it be? How will the
customer use it? At this stage of the project, you'll want to hear
different points of view, and one group you want to hear from
represents the engineering skills you need to design and build the
product. These people, the industrial designers, mechanical
engineers, electronics engineers, and software developers, can guide
you towards your concept, ensuring that the product's form, fit, and
function are feasible and the ultimate cost of your product meets
your expectations. I have worked with executives, owners, managers,
marketing and sales groups, manufacturers, scientists, and engineers
to define new products, and I can work with you.
Once you have the concept for your product, you'll want to write
a document detailing what the product will be, what it will look
like, how it will operate, and in some cases, how it will be
designed. You will consider your results from the concept phase:
preliminary drawings, feasibility studies, and design studies. I can
write your product definition document myself or I can work with
you.
Systems, software applications, and processes may comprise more
than one major component, often many. Individuals or sub-groups
develop separate parts and come together at the end to join their
parts together. Before you embark on such a project, you design the
product's architecture, a specification of how the system will be
broken down and organized into components and how these components
will interconnect with each other. There are many approaches to
architecture, for example, object-oriented models for a software
project, and your approach will depend on the nature of the project
and your organization. You want experienced engineers designing the
architecture for your product and project because an appropriate
architecture will lead to a simpler and more manageable project. I
can work with you to develop a practical and effective product
architecture that will lead to a successful project.
Once your product has been defined and your architecture has been
designed (if necessary), you will want to write documents describing
each part of your product that requires engineering development.
This document may specify the detailed performance requirements and
design approach for a printed circuit board or software module or
mechanical part. Sometimes these specifications are simple,
sometimes they are complicated. A good specification tells the
designer exactly what to design, and a poor, incomplete one leads to
confusion, conflict, and ultimately to disappointment. I have
written many specifications for diverse products and systems, and I
can work with you to develop yours.
Here is the point at which we sit down with our specifications,
definitions, preliminary design studies, and feasibility studies,
and create the product. If I am creating a printed circuit board
product, I create the schematic design. If you need a mechanical
part or system, the mechanical designers select materials and create
the drawings. If the product needs a custom enclosure for the
product's packaging, the industrial designer creates the drawings
that will eventually be used to create the molds. This phase is the
nuts and bolts of the product's development project. It is also the
point where the project becomes more expensive. The preceding steps,
concept, definition, and architecture, if properly executed, will
minimize the expense. The fewer iterations you require to complete
this phase, the quicker you get to market and the less money you
spend on your project. I can design many aspects of the product
myself, I can subcontract and manage others in this phase, or I can
work with your designers to complete this phase as efficiently as
possible.
It is easy to forget about the complexity and cost of the
packaging task when first planning an industrial or commercial
product. The packaging task comprises specifying the enclosure,
rack, cabinet, or box that will house the product, and its user
interface elements such as buttons, switches, displays, and lights.
Commercial-off-the-shelf (COTS) packages are often suitable for
commercial and industrial products, and in these situations, I can
identify which COTS product to use, design the mounting and
positioning of the devices in the package, and create the mechanical
drawings for the machining or other fabrication work required to
make the COTS package suitable for the product. Consumer products,
on the other hand, require a much more sophisticated,
custom-designed approach because the aesthetic aspects—look,
feel, color—are critical to the product's design. When custom
packaging is required, I can work with industrial designers,
mechanical engineers, and artists to develop the look you want, and
the documentation you need to build it. Finally, let us not forget
about the relationship between the electronics and package
development. The electronics must fit in the package, and the
package must be large enough for the electronics. Sound like a
chicken-and-egg problem? It is. The electronics and packaging
engineers must work together to make sure you get the form, fit, and
function you want. I can apply my experience with this process to
your product.
After your design matures and you have released it to the next
phase you will want to build your first prototype, whether it is one
unit of a small product, like a printed circuit board, a short run
of pre-production first articles, or an alpha system. Your project
is maturing and the stakes are rising with each step. Here is where
your painstaking approach to your preliminary specifications and
your meticulous attention to design detail pay off. An efficient
approach to testing and debugging your well-designed prototype will
get you into production in no time. On the other hand, if you rushed
into this phase, undoubtedly you will singing the blues. I'm sure
you have heard, "We don't have time to do it right," or "We just
want to get something done quick and dirty, and we'll clean it up
later." I have seen the results of this thinking, and I quote
another common saying in the business: "We didn't have time to do it
right in the first place, but we have time to do it again." I can
manage your prototype phase by purchasing components, arranging for
PCB fabrication, PCB assembly, machining, and model fabrication,
prototype moldings, final assembly, and testing.
If you are building a complicated, multi-assembly product or a
system with many components, you first develop the custom
sub-assemblies and purchase the commercial-off-the-shelf (COTS)
equipment, and then you connect everything together and test it. You
will be surprised how smoothly the product or system integration
phase can proceed if you carefully thought out the system in the
earlier stages of the project. The testing and debugging of a
product in the integration phase is an art, and the more experienced
the senior technical people are, the better. I can help you with
your system integration problems and troubleshoot integration
problems.
The first round of testing a new product is the most important.
You are testing the design and manufacturability of all aspects of
the product: its form, fit, and function. Once this initial design
verification is completed to your satisfaction, you release the
product to production, and in some cases, very high volume
production. You cannot afford to leave design errors in a product
bound for production because every manufactured unit will fail. When
I design your product, I leave no stone unturned when I test it. If
I have not designed your product, I can test your prototype and give
you an objective and independent opinion concerning its suitability
for production.
Obtaining agency approvals, such as UL, CSA, TUV, and FCC, for
your product can be a confusing and frustrating experience, not to
mention costly. The field of product conformity to safety, fire
hazard, and electromagnetic compatibility specifications is
specialized and complicated. I do not specialize in this area of
engineering, but I do know some folks who dedicate their entire
engineering practices to it. I can work with your agency approval
liaisons, refer you to specialists in the field, or subcontract
these specialists for your project.
You will develop written documentation at many levels:
specifications, design drawings and schematics, programmable logic
code, software models and design, printed circuit board artwork, and
manufacturing processes, to mention a few. And let us not forget
your customers, the users. You will need user manuals, and perhaps
service manuals. You may need training materials, and these days you
will probably want to publish your materials on the internet. I have
produced all of these documentation elements at one time or another
during my career, and more importantly, I can assemble experienced
technical writers who can help you produce a complete documentation
package.
The proper selection of the key components, for example,
microprocessors, amplifiers, regulators, and displays, is the first
step in a successful hardware design. I can review the requirements
for your electronic hardware, and put you on the right track by
selecting these components for your design.
The schematic is a drawing that shows all of the components and
their interconnections for one module of electronics. I structure my
design into functional blocks, double check the functions against
the specifications, and enter all of the components and their
interconnections into an organized and readable schematic. I test
the more complicated blocks of analog circuitry using SPICE models,
and I study the digital logic timing before I release the schematic.
I constantly revisit the data sheets of the components to ensure
that my design will work the first time. This task, when performed
with a thorough approach to detail, can make or break your hardware
development effort. I never rush this part, and my patience always
pays off.
I design digital logic for ASICS or FPGAs using either VHDL or
Verilog. This approach allows me to simulate these circuits and
modules so that I can optimize the timing and make sure I am meeting
the functional specifications. The same attention to detail and
patience that produces a reliable schematic design serves well with
this approach too.
The PCB design process, also commonly called PCB layout, produces
the graphical design, the artwork, for the printed circuit board.
The artwork is used to fabricate the board which holds the
components and provides their interconnections. The artwork also
includes the mechanical design of the printed circuit board, its
form and fit, and the elements for fastening it to other hardware.
Like the schematic design, the PCB design process is full of detail
and fraught with potential problems. Not only do I pore over the
components and their connections, but I check and recheck the
mechanical details to make sure that the parts will fit properly and
the board will meet its overall mechanical requirements.
I am not a mechanical designer, but I know some very good ones.
Of course, I can design very simple parts and have them machined,
but for anything beyond the most simple, I rely on colleagues,
experienced mechanical engineers, designers, machinists, and
fabricators, to handle your requirements. I will work with you to
make sure I understand your requirements, and then I'll take care of
the communication and coordination with my subcontractors.
It is surprising how much time you can spend setting up a
purchasing program for a new hardware product. I think this is one
of the most underestimated activities in technical projects,
especially when you need a prototype or a few first article units.
The labor cost of purchasing the parts for low volume production is
significant. I have been performing this type of work for a long
time, and I can help you with this phase of your project, especially
if you are not normally in the electronics business.
I can still use a soldering iron and occasionally I build a few
prototypes myself, but for the most part, I work with assembly
houses to build your products. During the development phase of the
project, I purchase the components, kit the parts, and work closely
with the assembly house.
When you test your new printed circuit board for the first time,
you are testing not only the components, board fabrication, and
assembly, you are testing the design of the circuits, the design of
the board, and the mechanical properties of the boards. I spend a
considerable amount of time studying a new printed circuit board to
ensure the design margins of the circuits are adequate, the spacing
of the components is suitable for automatic assembly, and the form
and fit of the board meets your expectations. In short, I am making
sure the board can be manufactured as efficiently as possible.
Before you can design and code your software, whether it is
firmware or a high-level application, you must write your
requirements. What functions must the software perform? Will it
store data? What hardware must it run on? Is it stand-alone or must
it run in another software environment? Who will use it? How will
the users interact with it? What language or development environment
is best for your project? I have written functional and technical
software specifications based on client interviews and I have
developed detailed requirements by working with my clients and their
customers.
If your software project requires multiple groups of developers
or if the operation of your software spans multiple devices or
locations, you will begin the project with an architectural design
phase. By this, I mean you will define relatively large blocks of
your software's functions as separate units and define a method and
protocol for communicating between them. This will allow you to
assign different individuals or groups to develop each component
block with a minimum of interaction. The nature of the architectural
breakdown will depend on the nature of the software's functions and
the environment in which the software will operate. In this
activity, good engineering judgment, grounded by years of
experience, will go a long way towards minimizing future problems.
Before you write any code, you want to organize your software,
whether it is one component of a large multi-faceted application, or
a stand-alone program for a microprocessor or microcontroller, or a
device driver, or even a function. You decide which data must be
stored in your module. You decide how to store them. You decide how
the data and procedures will flow. You may use flow-charts, a formal
design description method, object models, or some other method of
describing the data structures and program flow. When this phase is
performed properly, the coding is almost automatic.
You may need to perform calculations that require the development
of an efficient algorithm. It may be a complicated mathematical
method, a control system method, a database method, or a decision
method that requires an artificial intelligence approach. Before you
can design the module to produce the results you need, you must
decide which algorithm to use, and if you cannot identify a suitable
algorithm, you must develop it. I have developed algorithms and
computational methods for many mathematical problems, and researched
algorithms for many other types of programming situations.
This is the nuts and bolts portion of the project. After the
non-linear and serpentine path we took in preceding design steps,
this part of the trip is straight-forward. I am careful to keep the
individual functions and modules small, and I test every module to
make sure every line of code is performing properly.
After all of the individual modules are verified, you integrate
them into their larger components, and then integrate the components
into your final software project. Ideally, you will need to verify
the interconnection and interoperability of the modules and
components only. If the original specifications, architecture, and
designs were thorough, this step should be relatively painless. Of
course, you still need to debug and fix problems in the links
between modules, and you need an organized plan to ensure you test
every aspect of the product.
For low volume, I purchase the components, kit the parts, work
with the assembly house, and test the product before I deliver it,
in working order, to you. For medium and large volume requirements,
I manage the process and coordinate your activities with assembly
houses and other services.
For low volume, I can manufacture your product in a turn-key
fashion, that is, you order the product, and I deliver it. For
higher volumes, I will act as a liaison between your purchasing
organization and your production services.
This aspect of manufacturing, the assembly of sub-modules such as
printed circuit boards, enclosures, switches, battery clips, and so
on, is usually handled by an assembly house. Like printed circuit
board and mechanical manufacturing, I can take care of your low
volume needs in a turn-key fashion, but for medium and high volume,
I can manage the process for you and interface with the assembly
houses and job shops.
You want your product to operate properly when your customer
receives it, therefore, you test it before it leaves your plant. On
the other hand, you want to minimize the cost of your manufactured
products and assemblies, and testing costs money. So, how should you
test? First, you create a strategy for testing to minimize the
overall cost while maximizing reliability. I can work with you to
design a test plan for your product from your initial production
runs until product maturity. I can also manage the development of
your test fixtures and programs as well as design and develop
functional testers.
If most of your printed circuit board assemblies or final product
assemblies don't work right out of assembly, you have a big problem.
Is there a problem with the assembly process? Are your printed
circuit boards failing? Have you missed some design problems when
you did your design verification testing? Do you have a statistical
problem because of an inadequate design margin? Manufacturing
problems can arise even after the most painstaking design
verification and manufacturability testing. I have solved these
problems for my customers in the past, and I can help you solve
yours now.