I started reading articles on dev.to 2.5 years ago and I'm still amazed how welcoming this community is, especially for beginners. 4 months ago I decided to give some love back and started to write one article per week. I was overwhelmed by all your reactions, follows and positive feedback and I'm wondering if I might encourage you from dev to dev in your current situation.
A little bit about myself: I'm a 30 y/o German software developer and consultant living in Berlin. I'm happily married and father of two sweeties. I studied Computer Engineering at the Technical University of Berlin - it took me 3 additional years to finish my studies, (partly) because I started working as a system administrator at the university itself and later as a freelancer in web development during my studies.
When getting my Masters degree, I had grown the number of projects I worked freelance for, so I decided to go full-time and that currently works very well for me and my family (very flexible working times, an average of 30-35 hours/week, home office).
I really don't know much, but I would love to help you by sharing my experience e.g. to the following topics:
- home office, balancing work and family (especially with kids)
- freelancing (get projects, get clients)
- programming (Javascript, Python, PHP, CSS, VueJS)
I don't want to give you cheap answers, so please forgive me if it may take me a while to answer 😇.
Oldest comments (68)
How to get a first freelance project? hahahahha
how do you balance between your work and your family? I am still a student but I am always thinking about how can I give my family the time they deserve and keep working, growing in the sometime? I work almost all day trying to learn new things ? :'(
Hi Ridae,
very good questions!
I started doing web development as a hobby and after some time, people around me got to know, that there was somebody "who could make websites". So my first clients were friends or acquaintances who needed a website for a one time event or similar small projects. Later I got some low paid projects because people told other people that I was a web dev, but because I was just doing it as a hobby, I didn't have the pressure of gaining enough money from it. So I would say it is really important to tell people what you do. Tell your family, tell your friends, tell your hairdresser. They will reach out to you as soon as they know somebody who needs something. Don't expect too much from your first projects, their value is the experience how to handle clients, not the money in the first place.
I really love programming. I could do it 24/7. But I decided that people are more important than machines. I would love to learn everything awesome out there, but I simply can't with the time I have. If I have a new project, I first talk to my wife. I tell her what I have planned to work the next week/month (we share two calendars for family and work) and I value her feedback on my schedule. We decide what's best for our kids together. I communicate with my clients beforehand about the time, that's realistic for me to finish the project and what days a week I'm available.
I have 4 questions on freelancing :
How do we convince our first freelancing client, when we don't have any projects or experience in freelancing before ?
How do you show work progress to clients, daily , weekkly or monthly ?
On What basis you charge the clients , per web pages or per hour ?
Any websites you know to search for genuine clients ? What if we don't get our money ?
Same question I want to ask.
Hi
Although I'm not the author of this post, let me share my experience with you.
In order to convince your first client first, you should not price your project too expensive since it is your first project.
It depends on you, but what I do is sharing the progress every 3 days or so.
The way that is usually considered is by hours. But you can also price the whole project and tell your client that you will get this amount of money for the whole project and it is going to take 1 month to complete. So literally no specific per hour wage.
Well, I have no idea about this since I live in Iran and I mostly work with Iranian clients. Sorry. XD
Thank you for sharing your experience! And being faster than me 😅
Haha
Sorry that I answered before you.
This is your post.
Not at all! That's exactly what I love about DEV 😎
Hi shaijut,
thanks for these questions!
Be honest with your actual experience (nothing is wrong with starting something new) but also show confidence about what you can do. Show the client how exactly you want to solve his problem. People will know if you're a beginner but willing to learn or just faking.
It depends on the client. I ask them at the beginning how they like it. Most of my clients just want their product to be ready, so I inform them occasionally when I implemented another milestone or how I'm on the agreed schedule. When working for large corporations as consultant, the just want the timesheet of my work together with my monthly invoice.
I almost exclusively charge clients per working hour. In my experience that is best/fair for both sides. I don't have to work unpaid and my client doesn't have to pay more than I worked for. Plus: The client always has the possibility to request additional features without repricing the whole project.
Actually I don't know such websites, sorry :) I got some projects because people found my profile on LinkedIn or Xing, but primaly I got clients because people knew and recommended me.
Which freelancing platform you think is best for beginners in grabbing their first project? I started with Upwork, applied to a client's project and then I waited until I switched to Freelancer.com and Fiverr because I didn't get any response from them.
Hi Vaibhav,
I never used such a platform. I made the experience that the most important thing is, that people know what you're doing. My first clients were friends or acquaintances who needed a website for a one time event or similar small projects. Later I got some low paid projects because people told other people that I was a web dev. So tell your family, tell your friends, tell your hairdresser. They will reach out to you as soon as they know somebody who needs something. Also make sure that people can read about your skills online. Make yourself a website showing what you do. Have up-to-date profiles on platforms like LinkedIn or Xing. Show your code on Github/Gitlab. Show your creations on Dribbble etc. Write about your work on DEV and Twitter. People will get to know you and people will recommend you.
And one other thing: You need some patience, especially at the beginning. Don't think you failed because nobody reached out to you. It takes time. But it will happen!
Yes, I got it. Thank you so much for your detailed answer. I really appreciate it. The next step for me is to make a portfolio website. :)
You're very welcome. Don't forget to share a link when you have something to show!
Yes, for sure!
One particular "glitch" (leftover from my TBI 11 years ago) that I am still baffled at how to overcome is getting past my brain's passive-aggressive "I don't feel like doing this" mode. Once that kicks in, no matter how hard I try, and no matter how urgent the task, I never seem to be able to do whatever thing my brain is resisting doing. I've sat staring at a computer screen for extended periods before, or my brain starts coming up with all sorts of other, "off-topic" things to do instead.
Any ideas on how to override that and get things done?
Hi Jason,
I'm so sorry to hear about your suffering! And I really know what you mean. I have those unproductive times too. I mainly do 2 things against it:
I don't know if this works for you too, you are certainly in a very different situation. But I really hope you find something that helps!
Oh I feel you, I get the same situation every now and then, even with smaller side projects and some of them are residing at the digital graveyard because of this. Andreas' answer has two good points to which I want to add mine:
Thank you Robin for your great additions!
How hard was it to learn the non-technical (legal, finance, etc) parts of running a business in Germany?
Hi Marc,
very good question. I really had no idea about the legal stuff when I registered my business 😅 In Germany when your annual income is under a certain threshold, you just have to tell the tax office what you gained and paid for in your annual tax return (Einnahmenüberschussrechnung). So that was easy and worked for me the first years. When I got more and better paying clients I exceeded the threshold and was unsure what to do now. So I went to a tax consultant who taught me all the basics i needed to know how to make a sales tax return (I don't know if that's the correct English term - in German it's Umsatzsteuererklärung).
So it's not that hard, but a little bit annoying for people like me who just want to do their work and getting properly paid for it...
As a good developer I coded a tool for my business, where I can easily manage all my sales, taxes, yearly income etc 😇
That's a great reply, thank you!
it might be off Topic in here, but still going to ask...
is there any way you can think of, were on top of some string data which are encrypted and stored in some table. how to perform regex search on top of that?
Hi Saikat,
well anything means anything, right? 😄 Can you be a little more specific or give an example? You can do regex on a string, yes - where exactly is your issue?
Hi Andreas,
Thanks for giving me the opportunity to ask.
so here is the issue:
in Database, all the data are encrypted (e.g User Name and emails as well)
and its good to mention that I'm using MYSQL.
is there any way you can think of or suggest or have an idea, to perform regex search on top of this encrypted data?
for the discussion lets take an example:
Users Table:
UserId | FirstName | LastName |
---|----------|-----------|---
1|4vzrOlgFJ15JVuEwxey6Vw==| 2rqKd00JJEvn0M3HMzuaDg==|
2|4vzrOlgFJ15JVuEwxey6Vw==| 2rqKd00JJEvn0M3HMzuaDg==|
In here say:
For UserId 1, First Name is "Nikole" and UserId 2 is "Nokia",
what I want to achieve is, I would search with "No" and it should give me the UserId 2.
The catch is, I cannot directly search with the keyword, as it's stored in database encrypted.
What encryption do you use?
aes256 with output_encoding base64 & the secret & Iv key used for this, is again made with pbkdf2Sync with sha512 digest & keylength of 100000.
Got it - well I don't see a way to do it directly in MySQL. You would have to walk through the whole table, decrypt each record and perform your regex search on it...
How do you charge your clients? Per hour (if so, do you estimate the required hours upfront)? Or for a particular result?
(Maybe more interesting for German devs: Are you an actual freelancer or do you have a business (Gewerbe)?)
I think a common practise is to charge per hour for smaller less expensive projects and per service on larger project. I'm based in the UK so as an example when I first started freelancing I would breakdown projects into how many hours each part of the project would take and then what I was charging per hour. But when you start working on larger projects It's probably better to work purely on a per project basis, perhaps with a tier system , (if you want A it will cost X, if you want B it will cost Y and so on).
Hi Jannik,
yes, I almost exclusively charge clients per working hour. In my experience that is best/fair for both sides. I don't have to work unpaid and my client doesn't have to pay more than I worked for. Plus: The client always has the possibility to request additional features without repricing the whole project. And yes: This means I have to estimate the number of hours as precise as possible. The more projects I made, the better I got in estimating. I always talked to my clients, when my estimation was too optimistic or too pessimistic and we found a way both sides could live with.
For the German devs: I'm an actual freelancer, yes.
Thanks.i just stared read the dev. And I definitely get more and more help from you and all the other members.
How do you price projects, and if you price by project (as opposed to hourly) how do you protect from getting bitten by changing or unknown requirements (sometimes the client wants a price but the features or the design are not finalised yet)?
Hi Manuele,
let me first cite my answer to a similar question:
Hi Jannik,
yes, I almost exclusively charge clients per working hour. In my experience that is best/fair for both sides. I don't have to work unpaid and my client doesn't have to pay more than I worked for. Plus: The client always has the possibility to request additional features without repricing the whole project. And yes: This means I have to estimate the number of hours as precise as possible. The more projects I made, the better I got in estimating. I always talked to my clients, when my estimation was too optimistic or too pessimistic and we found a way both sides could live with.
For the German devs: I'm an actual freelancer, yes.
Sometimes it's hard to precisely estimate a whole project. When there are parts of a project you can not assess that well, you should talk with the client about that in advance and make an offer how to handle that. That way your estimated pricing remains transparent and the client doesn't get the feeling you want to take advantage of him.
Makes sense. I haven't been able to find clients willing to pay per hour yet though. I may have to improve my incoming pipeline, as so far nobody was willing to move away from a per-project pricing (which essentially is a way of shifting the business risk from them - usually a larger company - to me - a small freelancer).
Have you ever had to convince a client to use the per-hour system? And what kind of clients are more likely to accept it in your experience?
I see. And you're absolutely right: per-project pricing is less risk for the client.
Yes, a few of my clients I really had to convince. I normally argue, that per hour is fair for both sides otherwise I would have to raise the per-project price because of possible additional expenses.
I don't know if there is a "kind of clients" that accept it more. In my experience, it depends on how you sell it. If someone reaches out to me for a project, I set the conditions: This is my hourly rate, this many hours will the project presumably take, so in this range will the total price most likely be. If they are not happy with that, I explain that I can do it for less hours, but leaving out this and that requirement.
thanks for you advice. @sangdang