It might be different for me as a UI designer but I definitely felt that for sure. Very early on I worked for a startup and they required quite a high level of polish on the designs, this was right at the beginning of my journey so I wasn't very good understandably but it definitely pushed me to improve my skills quicker than if I let it happen naturally.
I can imagine it could be quite different and a lot harder for a developer because of the nature of what you have to do. I've read many times that people get better much quicker when they are forced out of their comfort zone and it makes sense because maybe you wouldn't push yourself in such a way if left to your own volition.
I guess my only advice would be to give the clients an overestimation of how long you think a task will take and it'll give you a buffer to learn what you need to learn and maybe even finish quicker than expected (under-promise and over-deliver).
Lastly maybe you can get the client to nail down explicitly (the scope) what they want done before you start. When they ask for extra features you can point out that it's not part of the contract but you could accommodate it once the current contract has been concluded. If the task is too difficult you'll have the option to walk away.
Hi Jenny,
It might be different for me as a UI designer but I definitely felt that for sure. Very early on I worked for a startup and they required quite a high level of polish on the designs, this was right at the beginning of my journey so I wasn't very good understandably but it definitely pushed me to improve my skills quicker than if I let it happen naturally.
I can imagine it could be quite different and a lot harder for a developer because of the nature of what you have to do. I've read many times that people get better much quicker when they are forced out of their comfort zone and it makes sense because maybe you wouldn't push yourself in such a way if left to your own volition.
I guess my only advice would be to give the clients an overestimation of how long you think a task will take and it'll give you a buffer to learn what you need to learn and maybe even finish quicker than expected (under-promise and over-deliver).
Lastly maybe you can get the client to nail down explicitly (the scope) what they want done before you start. When they ask for extra features you can point out that it's not part of the contract but you could accommodate it once the current contract has been concluded. If the task is too difficult you'll have the option to walk away.