DEV Community

Cover image for 10 lessons from a software engineer & freelancer

10 lessons from a software engineer & freelancer

Fabio Zammit on December 28, 2018

In recent weeks, I wanted to share some of the lessons I learnt throughout my career as a software engineer, freelancer and now running a software ...
Collapse
 
mohdule profile image
Mohannad Salah β€’ β€’ Edited

Awesome post πŸ‘

I was just talking to a colleague of mine about that UX knowledge point yesterday.

When running a start-up with no designer or a UX guy at least having a "good enough" product UX is really vital to market penetration.

This adds up to what you pointed out earlier about "putting yourself in other people's shoes", this is a part of that, IMO developers must put themselves in the end user shoes and use the product, they would notice a lot of improvements that could be made, UX wise, and feature wise as well.

Collapse
 
adrienjoly profile image
Adrien Joly β€’

Very good advice! As an ex-freelancer who is very curious and loves to experiment and learn through side projects, the only advice I don't 100% agree with is "Showcase EVERYTHING".
I did that and it attracted a too wide array of customers and projects, mostly on topics that I didn't want to work on anymore.
As replying to potential clients takes time and saying no is not easy nor fun, I would recommend to pick a speciality / area of focus and/or a clear set of technologies you want to work with, and only share a portfolio that is related to that.
Also keep in mind that the projects that you take will influence the kind of potential clients that will contact you => only accept the kind of missions that you would accept to do again in the future.

Collapse
 
fzammit profile image
Fabio Zammit β€’

Thank you :) glad you found it useful.

Yes, and that is also part of being a start-up where you have to wear multiple hats in order to get the product out there.

"IMO developers must put themselves in the end user shoes and use the product" - that my friend is the holy grail. Keep repeating this to everyone!

Collapse
 
ericlortie profile image
Eric Lortie β€’

Good points, and well written.

I used to freelance years ago, and then I worked at a couple startups as they progressed, eventually working dev team manager, project manager and product manager roles. I also spent a couple years teaching at university and college programs.

I'm now back to freelancing and the quality of my work and experience is completely different than it was before, mainly because I learned all of the lessons you've included here.

Collapse
 
fzammit profile image
Fabio Zammit β€’

Thank you for your comments πŸ™‚

β€œthe quality of my work and experience is completely...”....that is very true and I can relate to this.

In fact I would recommend anyone to try working for companies/startups even when a freelancer.

Collapse
 
lexuantrung8 profile image

Thank you for your post.
I'm trying to be a freelancer, but I don't have more experience with this position, too hard to get the first job among developers when I just started
Do you have any idea with mine case?
Thank you.

Collapse
 
fzammit profile image
Fabio Zammit β€’ β€’ Edited

I suggest you put together a portfolio of what you did even if they are projects you did for yourself.

Once you are done open a profile on Elance and Upwork. That should give you a good start but the most important is perseverance, never give up, as cliche as that sounds. Wish you all the best of luck 😊

Collapse
 
ngryman profile image
Nicolas Gryman β€’

Haha I've made the exact same rm -rf / in my first job... Hopefully SVN saved us back then. God, SVN...

Anyway, great post especially about ego!

Collapse
 
fzammit profile image
Fabio Zammit β€’

Haha, damn...... Thanks for taking me down memory lane.

SVN rocked at the time, then Mercurial was kind of the new kid on the block.

Thanks for the comments πŸ™‚

Collapse
 
freewayz profile image
Peter Edache β€’

Awesome man

Collapse
 
fzammit profile image
Fabio Zammit β€’

Thanks πŸ™‚

Collapse
 
torajk profile image
Toraj Khavari β€’

Good and valued inputs. Very true. Happy new year. Thank you.

Collapse
 
fzammit profile image
Fabio Zammit β€’

Thank you for your comments, same to you!

Collapse
 
keziahmoselle profile image
Keziah β€’

Great post !
I would love to see a list of ideas of this point : Lesson 1 - Showcase EVERYTHING

Collapse
 
fzammit profile image
Fabio Zammit β€’

Thank you :) Sure I will write a new post about this in the coming days.

Collapse
 
keziahmoselle profile image
Keziah β€’

Great ! Thank's

Collapse
 
sduduzog profile image
Sdu β€’

Ahh, might as well say it. While trying to configure lamp on my machine I removed root privileges from root. I couldn't fix that because I no longer had permission as root

Collapse
 
fzammit profile image
Fabio Zammit β€’

Thanks and well done for sharing, it will only make you stronger πŸ™‚

Collapse
 
joruch profile image
Joris β€’

Yes! and especially on point 3! I've been meaning to write an article on this subject for a while now. You should always pick the language that suits your application, never the other way around!

Collapse
 
fzammit profile image
Fabio Zammit β€’

Write the article, the more awareness we raise, the more we grow πŸ™‚

Collapse
 
5456qwe profile image
1214586 β€’

Lesson 10 is the hardest ;_;

Collapse
 
fzammit profile image
Fabio Zammit β€’

Yes, however the best way to go around it, is to put yourself out there. Post articles, tell everyone what you do, what you enjoy and get very involved on Twitter.

I can see you have some Github repos, promote what you did :) I am convinced that your work will be appreciated!

Collapse
 
sfarkas1988 profile image
Sandor Farkas β€’

Great post, I agree with all your points 100%!

Collapse
 
fzammit profile image
Fabio Zammit β€’

Thank you πŸ™‚

Collapse
 
godfreytech profile image
Godfrey Muiruri β€’

Nice post.

Collapse
 
fzammit profile image
Fabio Zammit β€’

Thanks πŸ™‚

Collapse
 
kgkk416 profile image
GANESH β€’

Nice post

Collapse
 
fzammit profile image
Fabio Zammit β€’

Thank you

Collapse
 
ben profile image
Ben Halpern β€’

Fabulous post, great advice.

Collapse
 
fzammit profile image
Fabio Zammit β€’

Thank you :) Highly appreciate your comments

Collapse
 
nicolasguzca profile image
Nick β€’

Thank you for this post Fabio! Great advice

Collapse
 
fzammit profile image
Fabio Zammit β€’

Thank you, glad you found it useful :)

Collapse
 
steelwolf180 profile image
Max Ong Zong Bao β€’

Awesome post I find that the jargon part is always something I had problems with.

Which turns out to be really bad whenever I explain it in a none technical way.

Collapse
 
fzammit profile image
Fabio Zammit β€’

Don’t worry awareness is the most important, plus this still happens to most of us.

The most important is trying!

Thanks for the comments πŸ™‚

Collapse
 
elvin profile image
elvin β€’

Great post!

Collapse
 
fzammit profile image
Fabio Zammit β€’

Thanks

Collapse
 
abdurrahmaanj profile image
Abdur-Rahmaan Janhangeer β€’

haha dev.to actually helps according to this article πŸ‘agree