Questions To Ask
This section is a general set of useful questions to ask for:
- Potential clients when working with them on a tech project
- Choosing technologies
- Better understanding how your product can fit their needs
It is worth noting that with experience in particular situations, you may build up templates/personas that help you to diagnose and ask the right questions.
Resources
Understanding a potential client
- What is your financial model?
- What is your capacity for writing code?
- What does your team know best?
- Is there a big enough pool of engineers to hire who can roll with your stack?
- What does future maintenance look like?
- What project management processes are in place?
- What development practises do they follow?
- Do they have suitable staging environments?
- Do you have experience with these kinds of projects?
- Tools to communicate?
- Estimated length of project?
- What are the most important features?
- Is there a concrete plan?
- Tech consultant/advisor to call on when needed?
System integration
These question can be useful for an integration engineer for deeper understanding about what they are working with:
- Why is the customer doing this project?
- What pain point is being alleviated or what need is being filled by completing the project?
- Does the integrator have all the information (drawings, programs, standards, etc.) needed from the customer?
- What does the integrator know about the customer’s existing systems? Does the customer have obsolete parts or technology that is no longer supported?
- Is everyone in agreement on assumptions being made concerning the project?
- What are all the deliverables the customer expects?
- How much experience does the customer have with the technology being used?
- How much training will be required?
- What quality controls measures are in place and how does the customer want to handle approvals?
- Does the customer understand your change order procedure and what would constitute a change?
- What defines overall project acceptance between the system integrator and the customer?
System design
Understanding the goal
- What is the goal of the system?
- Who are the users of the system?
- What do they need it for?
- How are they going to use it?
- What are the inputs and outputs of the system?
Establish the scope
- Do we want to discuss the end-to-end experience or just the API?
- What clients do we want to support (mobile, web, etc)?
- Do we require authentication? Analytics? Integrating with existing systems?
Design for the right scale
- What is the expected read-to-write ratio?
- How many concurrent requests should we expect?
- What’s the average expected response time?
- What’s the limit of the data we allow users to provide?
What are the system entrypoints
- User interaction
- External API calls
- Offline processes
Follow up questions to consider
- What are the required data structures and algorithms?
- What are the tradeoffs?
Mock Systems Engineer questions
These are worth knowing and asking yourself. Some can be used for their own retrospective when looking back on a previous project.
- What major challenges and problems did you face at your last position?
- What is your greatest weakness?
- How do you evaluate success?
- Why should we hire you?
- What motivates you as an application integration engineer?
- Ten years from now, where do you see yourself?
- What excites you the most about a career as an application integration engineer?
- Why are you the best application integration engineer for us?
- Describe the most creative work related project you completed.
- What are you doing to keep current in technology?
Asking the right questions in an integration project
These questions are to empathise from the customers point of view:
- How do I make an API call?
- How do I authenticate myself against the API?
- Do you have an API library?
- Are there any limits on the API?
- Do you have any developers to talk to during the integration?