paint-brush
The Developer’s Guide to Completing Projects on Time by@designingthomas
1,281 reads
1,281 reads

The Developer’s Guide to Completing Projects on Time

by Thomas JamesAugust 2nd, 2021
Read on Terminal Reader
Read this story w/o Javascript
tldt arrow

Too Long; Didn't Read

Developers need to work closely with the decision-makers to implement ideas as efficiently as possible. This in turn, reduces my time managing the project, and increases the overall quality of work. The most important first step is accurate planning and accurate planning. Give designers ownership of the project and let them feel empowered so they can manage the website if you’re busy. Give them ownership of a project and help guide the process to ensure they are more involved in the tasks you give them. It will also create a positive work environment.
featured image - The Developer’s Guide to Completing Projects on Time
Thomas James HackerNoon profile picture

Project Management Workflow

Developing a website takes time and effort.


As developers, we don’t have the time to waste on deciphering what our product team or our client wants. We need to work closely with the decision-makers to implement those ideas as efficiently as possible.


Over the course of my involvement in many projects, I have developed a workflow that includes designers and product managers. This in turn, reduces my time managing the project, and increases the overall quality of work.


You may think working with a designer might be a waste of time, and you can save more time just working it out yourself when coding. But you should be careful with that line of thinking. I’ve worked with designers for years and have come to realise that sometimes just by listening to them and collaborating with them the project moves along quicker.


Simply understanding their viewpoints, their intent for a project, and by getting them to understand exactly what I need from them, the project along much faster (often I’d have to dig for brand assets, images, logos, fonts one by one).


Problems

I frequently encounter the following problems:


  • Lack of communication and difficulty in getting prompt answers and replies;
  • A lack of centralized resources;
  • Difficulties in having them participate in testing areas of the product while I am working on other parts of the website;
  • Creating consistent user flows that the designer is happy with;
  • Spending time explaining and reiterating parts of the project due to lack of team cohesiveness.

Clarify Instructions

People can operate optimally on a variety of workflows, but the most important first step is accurate planning. Consider these suggestions:


  1. Show the designers and product managers exactly what assets you need, in what format(s) you need them, and what your preferred deadlines are.


2. Show them how you want them to create separate versions (so they have the next iteration of the design ready for you when you need it).


3. Go over the designs in detail with the designer to understand exactly what they want to do.


4. Explain the project timeline and when you expect them to complete certain tasks. Show them what you expect from them, don’t let them assume you’re doing everything, explain in detail what you need them to do, so there is no shade of doubt over tasks.


Following this creates a higher chance that things will get done correctly and on time. Some of your clients may have never worked with a developer before. If this is the case, give them ownership of the project and let them feel empowered so they can manage the website if you’re busy. It will also create a positive work environment and helps guide the process to ensure they are more involved in the tasks you give them.

Optimize for Success

1. Have an Onboarding Presentation

Have a presentation and get a feel of the app or website.


You will instantly have a higher level of understanding of how the designer intends for the app to work, and when you’ve built the first releases you can compare to the prototype side-by-side.


My clients often use Adobe XD. There they can produce either wireframes or detailed mockups, showing me exactly what they are looking for. I like seeing early drafts of what the client wants because it helps me advance early-stage development without having to think too much about design.


This gives me an early chance to give feedback on anything obvious that's missing, such as page states. Seeing this early on allows me to ensure I’m not waiting around at a later date, by the time I am ready to start developing that part, the designer/PM will have worked out what they want it to look like and how it will interact with the rest of the website.

2. Set up Versioning

Versioning is vital for a fast designer-dev workflow. How can I develop my app if the designer keeps iterating on the file at the same time? There has to be a better way.


The best way to do this --at least based on my experience-- is to have versions and control it tightly. One file which the designer works on and the one I use for development purposes.I use Mockplus for this, I can compare design versions side by side and quickly see any changes.


Additionally, I ensure my projects have a filegroup for larger updates, so my version 7 is one file, and any increments (7.1, 7.35 etc.) are inside that project. Then I continue that in a separate project file for version 8 and so on. This way, my incremental versions are kept in one file, with the ability to compare differences and any larger updates are in completely separate files. This keep my files organized.

3. Utlilize Task Management

Create a task management flow.


I use Monday but any such platform is suitable - just get your colleagues to keep tasks up to date so you don’t need to reply to messages one by one. Onboard them to Jira and get them to input what they want you to do, what specific details they want included and for when.


This keeps the whole project moving on without waiting around in the background for tasks to be completed.

4. Create a Workflow

This is unique to the developer and product team, however, creating a workflow that’s right for the situation creates an environment where the process becomes so smooth it seems automatic.


This depends on the abilities of your team members but if, for example, some team members have the capabilities to make mockups, usability testing, and test out any alpha releases for you, you may use your time and energy on other areas.


Of course, the specific skills of your colleagues will vary from client to client (or team to team). It's up to you to harness their abilities to make the project run smoothly.

5. Have a Central Resource Hub

Create a resource bin for important resources: reference links, brand assets, and documentation so they are only in one place for you when you need them. Afterward, go about creating a file naming system for the actual design projects they share with you.


Finally, most design tools support code snippets for assets --such as buttons-- and this speeds up my development just by being able to enter those design assets into my code by copying and pasting.

The result

Projects can be implemented well and without extra pressures with a correct workflow.


Getting the right people to do the right work at the right time saves time for developers and takes an enormous weight off, of our shoulders.


You just have to take the time and plan out at the start of a project what your expectations are, what the framework is for who does what and when. This helps to keep all relevant parties in the same loop and keeps the project transparent.


Every project is different.


Take the time at the start of your project to learn how each team member works, what the expectations are, and how to stay in a good work rhythm.


You are the one who is developing the product, you need as much help as possible to reduce development time, and that comes from support from the rest of the product team. With these workflow suggestions, I have been able to develop websites faster and implement new features on time.


Sometimes collaborating while developing can be hard. We get requests from all angles. But this flow optimizes how you and the team around you manage the work. It gives structure and mitigates against the major problems we have when working in a product team.