I am planning to design and develop a website. Not extremely difficult but it needs a database, some data queery functions and a responsive design.
My question is whether it is better to hire a designer and developer seperately or just one web design/developer firm/agency, which internally have their designers and developers?
I think that design is more subjective which makes it importnat that I find a specific designer whose style I like. The developer on the other hand has to "just" make sure that the site function as I specify and therefore there are fewer subjective selection criteria involved.
I assume the colaboration between designer and developer would work better if I contract a design/developer firm as the project management is carried out internally and the contractors might have worked together before.
On the other hand, if I hire them seperately, I can hire the best designer (based on my design ideas) and the best developer.
Does anybody have any recommendations and experiences with that? Do you see any problems in hiring a designer first and then a developer who turns the photoshop design into a functioning website? Or do you recommend hiring a firm?
Thanks a lot for any opinions.
Solved! Go to Solution.
I think if you want to save considerable amounts of time and money you should avoid hiring an agency.
Your project manager can work with individual contractors to achieve higher-quality results at a lower cost. With a good agency, you have the potential for things to be considerably simpler for your project manager, but you will almost certainly pay more. Of course, it depends on the agency or individual contractors.
With an agency, you have less control over the components. You may like the visual design, but not the quality of the source code. Most agencies produce low-quality database design, although you may get nice-looking visual design and acceptable application source code.
If it was me, I would hire about ten or more people.
5 visual designers for one to two hours each. Collect all their ideas and designs and give them to the best pick out of the bunch and tell her: these are the elements that you like best, can you use this and that, etc. Continue working with that person.
Hire a couple database design specialists for an hour or two. Continue working with the one whose work you like the best.
Hire a few back-end developers to provide you with general plans for the back-end source code and samples of functional source code, such as a search page. Continue working with the candidate you like the best.
Your final team consists of four people:
project manager who coordinates all this and evaluates submitted work and issues assignments
Depending upon the complexity of your project, the database designer's work may only take a couple hours, or it may take more. It is the smallest, shortest job, probably. If the database quality isn't important because you have such a simple or small data set, then you can have the programmer create the database design.
This is if you're really serious about creating a high quality project while also saving money. If the quality of the project is not so important, or if this is a fairly small and simple project, you can use a single generalist individual to do all this.
Hi Preston, thanks a lot for your detailed reply. I would like to elaborate a little bit:
Would you recomend to do the design first and then give the design elements to a developer or the other way around?
Also, where does design end and development begin? In other words, does the designer only create the photoshop design elements (buttons, layout, fonts etc.) or should the designer also know CSS in order to make sure that the design can be realised with CSS in an efficient way? Is CSS the job of the developer or designer? I am thinking about that in the context of responsive designs. Would the designer need to create elements for each (or the most important) screen sizes or is this done with CSS in form of resizing and repositioning the original design elements, which would imply that the designer only creates one design for one screen size?
Use of Photoshop to design a website's layout as an image, which is then implemented, is a very singular, very specific technique. It is not the most commonly used approach, nor should it be. This is a technique best suited for very simple websites, or even single webpages, for which the visual appearance is paramount and for which there is nothing or nearly nothing distinctive with regards to functionality.
For certain projects, this IS A GOOD TECHNIQUE to use. It is never, however, the only possible technique.
If you already know that data from a database is a significant part of your website, then the database should be designed first. The database should be designed with utmost respect for the data, the nature of the data, the relationships inherent in the data. The nature of the website is largely immaterial at this point.
Then a programmer should work on creating the functionality you want for your website. Much, but not all, of the functionality will involve using data within the website. The programmer should then work with a CSS-based visual designer. The designer can craft visual design for the website and request that the programmer add additional tags and coding as necessary so that the visual designer's vision can be implemented.
Database design, front-end visual design and back-end programming can each be done somewhat independently of each other, and can even be done simultaneously by separate specialized expert contractors, but eventually some coordination is needed among them.
For best results, whether or not one or many people do these things, your system will retain separation between these layers. For example, you should be able to change the look of your website without having to change the underlying data in the database, and vice versa.
Thanks again, Preston.
I don't think the database is very complex. Basically, visitors will be able to vote for a match-up between two teams. They select team 1 from a list, then team 2, and then vote for this desired match-up. The site can display the most popular match-ups.
I think the design is more challenging, especially as it needs to be responsive and the site should have features such as: selecting a team from the list triggers a picture that appears in a box next to it (without reloading); or clicking a tab should slide out the voting section and not open a new site/reload the site.
Hiring a developer first, then a designer and giving the design back to the developer sounds a bit inefficient, doesn't it? Because, first, the developer works with generic design elements and then with the final design elements. Wouldn't it be more efficient to work with the final design elements from the beginning?
I agree that if the database functionalities are more complex the development should come first as problems might arise which require front-end design reconsiderations. However, I think this is unlikely in my case.
p.s. good to have made contact with you (I looked at your profile) because for another project I might need a database wizard (not yet confirmed though).
Your project seems very design-centric, very visual. I see no problem with hiring a purely visual designer first, and having her provide designs to a programmer to implement.
I think you will get best results if you use different people for programming and visual design, as I said before.
If you get a really good artist/visual designer, and separately, a really good programmer for functionality and good usability and system performance, these are very different specialties. Most anyone willing to do both will be weak in one area, or will be using tools and techniques which limit you.
Many projects don't need a dedicated visual designer at all... Such as administrative back-end tools designed only for a small number of employees. But your project is clearly one for which visual, front-end design is very important, and you will be most satisfied by hiring a graphic/UI designer separate from the programming/development team.
I tell people that they have two choices 1) hire a great designer and then a great coder or 2) hire a guy who is mediocre at both.
The big boys separate design and infrastructure for a reason. Most people are good at 1 but not both. The issue on Upwork is that it's important for designer and coder to work together although I suppose it could be done through a PM. It will increase time though. Usually, designers aren't too far from the coders even if they work in separate departments. Then, you have the issue with Upwork's designer and coder don't know each other, which could also be a problem.
If I had a choice, I'd first hire a designer, get the design and then hire the coder who needs to create the infrastructure (database and backend code) but can plug in the design elements. Ask the designer to cut up the elements! Makes things much easier.
I can tell you this much. I can do both but I code-super fast and design like a snail. I charge the same for both. Usually design services are usually less expensive than coding services so they are paying a convenience charge. If the designs are done, then I code even faster because there is no question in what is required for the job.
A project management system like Trello or Wrike (there are a whole bunch of them) will allow the members of your team to communicate and share files. And of course there are Dropbox, Skype, etc.