×

Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!

Ask Slashdot: How To Begin Work In IT Freelancing?

Soulskill posted about a year and a half ago | from the do-not-work-on-relatives'-computers dept.

Businesses 140

king.purpuriu writes "I'm a computer science high school student, and I'm looking for some work in IT freelancing. I have had a interest in computers and programming for a while, and I began learning on my own before high school. I would like to gain some experience (e.g. what the bulk of the jobs in various markets require, various technologies/frameworks and their usage) and possibly make some money on the side (not expecting too much; at this point, any non-negative amount will do). Key areas are web development, app programming and scripting. What solutions do you recommend? Any tips or tricks of which I should be aware? How should I deal with payment (in terms of fees and commissions; I'm from European country), and what type of work should I seek out? I would also be willing to do some small stuff for free in order to gain experience (small, static sites, small scripts, etc.)."

cancel ×
This is a preview of your comment

No Comment Title Entered

Anonymous Coward 1 minute ago

No Comment Entered

140 comments

What helped me... (5, Informative)

johnsnails (1715452) | about a year and a half ago | (#41278717)

1. Get some experience not doing freelance (know the tools of the trade) - Dont just default to freelance because you can't find a job. 2. Create a Website with a portfolio of your work. (this does not need to be for actual customers, could be ideas you have come up with and made, eg for web development create some word press sites / joomla or similar, create some sites using the language of your choice, for me that was PHP and the whole LAMP stack. and some sites using a framework like Yii (or what ever). and mingle in some JQuery / JS / LESSCSS. 3. Profit??

Re:What helped me... (1)

johnsnails (1715452) | about a year and a half ago | (#41278729)

Sorry I probably did not tweak my advice well enough for your specific position, feel free to skip step 1. As step 2 will help with step 1 later on, and then when you want to kill your PHB become a freelancer angain!

Re:What helped me... (1)

jones_supa (887896) | about a year and a half ago | (#41278797)

Sorry I probably did not tweak my advice well enough for your specific position

Look at the upside: first post!! *Pours a glass of champagne*

Re:What helped me... (3, Informative)

fermion (181285) | about a year and a half ago | (#41281019)

I was fortunate enough to have the opportunity to volenteer for a non profit. I was able to complete and maintain a project over a number of years. This allowed me to learn the tools, how to interact with stakeholders, deliver a product, and accept often overly critical suggestions.

i believe, this as much if not more than skills, is critical to freelance work. One must learn the maturity and ability to work through requirements, develop a solution that respects client wishes but is practicle to implement in reasonable time and moeny, and then not panic when all that changes after what you think is delivery.

In the end build something that shows that you know what you are doing Do not accept nothing from a for profit concern . When I was 19 I was billing over US$15 per hour with little experience. Of course not everyone who thought they knew MS Office was presenting themselves as compentant computer analysts and billing minimum wage.

Don't. (1, Troll)

VortexCortex (1117377) | about a year and a half ago | (#41278731)

Keep on studying and learn to write some damn code.

Re:Don't. (3, Informative)

Anonymous Coward | about a year and a half ago | (#41278789)

This, but let me elaborate.

Being able to "program" is a severely minor part of your job as a software engineer (or similar professions). Most highschool kids dont realise this because their projects are usually of a very small scale (php webforms and such) where you can ignore half the job and it'll still look decent. You don't have to deal with complexity of projects, you don't have to deal with other programmers working with your code, you don't have to deal with security at all since noone is gonna be using the thing let alone hack the thing. In short, you really only know a fraction of what you should know in the business, which isn't really a good thing for someone not working for a boss/team.

More importantly though, programming by itself is a bit of a dieing profession. By this is mean, it's kinda like being a typist 20/25 years ago. Back then not many people could work with a computer, and of those who could (a little), most were very slow typers, so they hired typists to do the work. As time went on, more and more people learned to use computers and learned to type adequately. Nowadays almost everyone you'll see in an office will be able to do their own typing work.

I kinda feel like it won't be long until programming is in the same position. Scientists all have a decent enough grasp of programming that they cobble together their own software/algorithms without the need for a software engineer. Small businesses and the like are building their own websites through CMS software packages. I could go on and on, from every possible side, the market for ACTUAL programming work is shrinking compared to the growth of the overall market.

I would say, think about all the jobs that require programming to support it, and consider if you wouldn't like to learn a job like that, and ifso, study in that direction.

What solutions do you recommend?

I assume you're talking about languages and such here? Use whatever fits the bill most. Often nowadays (for generic projects and web projects) you'll run into PHP, Java, C#, C, C++, Lua, and a bit of Ruby i guess.

How should I deal with payment (in terms of fees and commissions; I'm from European country),

That's entirely up to you, you don't sound too worried about money yet (probably living at home), so take advantage of that. Offer a free mockup/preview version for free and tell the client that you expect the project to cost (let's say) 1000$. Tell them that if they like the mockup that'll be building over the next 2 weeks, they have the option of paying 500$ and the other 500$ after its completely finished. Also draw up a quick&simple list of the features that the project should include and ask them if that's really all they had in mind, tell em anything not on the list, which they ask for after the fact might cost more money.

and what type of work should I seek out?

I can't answer that, pick whatever you like the most, or what you're best at. If work is scarse pick whatever you feel you can do without much problems.

I would also be willing to do some small stuff for free in order to gain experience (small, static sites, small scripts, etc.)."

You can, but generally it's not worth it. In my opinion only do this if you feel you either really enjoy doing it, or if you think it's gonna somehow increase your profile with potential clients. Noone is gonna care if your CV says you checked in some code to Wordpress once.

Re:Don't. (3, Insightful)

Intrepid imaginaut (1970940) | about a year and a half ago | (#41278809)

I could go on and on, from every possible side, the market for ACTUAL programming work is shrinking compared to the growth of the overall market.

Is there any evidence for this? My experience is the opposite to be honest.

Re:Don't. (4, Insightful)

Cryacin (657549) | about a year and a half ago | (#41279187)

I have to say that the AC GP post is pure weapons grade baloneyum, and I suspect we both may have just fed a troll.

The typist argument is a bit of a strawman, as most people can easily type, and the quality/recognition of the quality of the product is pretty self apparent. A more apt comparison would be to compare building a website, to building a shed. Sure, you can do it yourself, and if you're a handyman, it might look kinda good. But generally it won't come in at the level of quality, or at the real cost (if you yourself are worth anthing, your time is not free) of a seasoned professional who does it day in and day out.

Building software as a programmer in this analogy starts at building a house. How successful do you think the average person would be at that? And for the really big enterprise projects, you're talking a skyscraper. We even have similar roles such as Architect, Developer, Quality Assurance, Project Manager etc. for an undertaking of that size.

I think the people who believe that software engineering will disappear are the same ivy league management graduates who think that shipping work off overseas to be done by teams of monkeys on typewriters in a sweatshop to reduce costs on what they see as a non-revenue generating, but somehow magically essential to the company service as equivalent in quality, and yet cheaper in overall price. Most companies who are doing this, learn the hard truth on the bottom line, or miss it completely and just mysteriously feel it in their wallets.

To the person asking the question about the industry, it's simple. Do interesting projects. Money will come with talent. Unless if you are in a team, with some really good and/or experienced people who can clean up your rubbish, and hopefully that you will learn from as well, your first few projects will fail. We've all been there. Don't be afraid to do so. Like a friend of mine always says, Silicon Valley was built upon the bones of failure, just don't let them be your bones.

Re:Don't. (1, Insightful)

shobadobs (264600) | about a year and a half ago | (#41278971)

Being able to "program" is a severely minor part of your job as a software engineer (or similar professions).

I can't fathom the confusion and incompetence that would lead to such a statement.

Re:Don't. (0)

Anonymous Coward | about a year and a half ago | (#41279289)

Posting anon since I work for a defense contractor:

Being able to "program" is a severely minor part of your job as a software engineer (or similar professions).

I can't fathom the confusion and incompetence that would lead to such a statement.

Sadly, I've seen it first hand. I saw it a lot in Motorola. It exists in a lot of defense contractors, typically led by hardware engineers who still think they are in the 60's and 70's. Due to the nature of DoD contracts (which grant a virtual monopoly on a project), these companies know how carved a niche and can still make profit without having to face the consequences of their own incompetence (in the same way commercial companies would.) And then there are people who thrive in this shit.

Not all defense contractors are like this. But many are. And working for them is sad. The incompetence of it all.

Re:Don't. (0)

Anonymous Coward | about a year and a half ago | (#41280131)

I work for a defense contractor you inconsiderate sod.

(and yes we do have a bunch of "hardware engineers" and MBA's running everything.)

captcha: discrete

Re:Don't. (4, Interesting)

Shavano (2541114) | about a year and a half ago | (#41279883)

It's a necessary part, but I think it's arguable that it's minor it doesn't comprise most of what a software engineer needs do know and be good at.

In my workgroup, we have a number of people in the software department. They all know how to program. They all carry the title of Software Engineer. But some of them are really just programmers. Here's what makes the difference in my mind (from the perspective of a hardware engineer):

Ability to assess the amount of work necessary to complete a complex task.
Ability to clearly communicate the status of their efforts to technical and non-technical managers.
Understanding and support of the big picture goals of the organization.
Ability to break a large project into tasks that can be executed by several programmers.
Awareness of the methods used in industry generally to solve problems similar to the sort that we deal with regularly.
Awareness of methods that have nothing to do with what we do.
Willingness and ability to do research.
Ability to devise new methods that improve on previous methods.
Production of well-documented work that can be easily reused by other programmers.
The habit of making code designed to be easily extensible and reusable.
Ability to read an electronic component's data sheet and figure out how to drive it.
Ability to advise hardware and firmware designers what it will take to run their software.
Ability to communicate the limitations of their solution.

Re:Don't. (5, Insightful)

luis_a_espinal (1810296) | about a year and a half ago | (#41279257)

I kinda feel like it won't be long until programming is in the same position. Scientists all have a decent enough grasp of programming that they cobble together their own software/algorithms without the need for a software engineer.

Decent enough grasp of programming? Do you even know what that even means. I work, and I have worked, with scientists and EE majors who write copious amount of code (which sadly I have to deal with), code that looks like this (yes, this is the type of code I've had to deal with from such scientists and EE majors, and to be honest some CS majors, I'm not making this shit up):


do{
if (!condition1){ break; }
else{
// do some logic
if(! condition1_a}{ break; }
else{
// do some logic, and
// NOW, HERE IS THE KICKER, SPRINKLED HERE AND THERE if( error ){ // do a recursive call hoping the error goes away }
}
}

if( ! condition2 ){ break; }
else{
// some other stupid logic intended to mimic a goto
// statement because gotos are evil, but this shit is ok
}

// .... cue several dozen more tests like these..

if ( ! condition_I_lost_count_how_many ){ break; }
else{
// do some more logic that you cannot longer follow,
// and which makes you can to commit seppuku, and
// hang yourself with your own guts
}
while(0);

People who, intelligent as they might be, still don't fucking get why it is important to layer your functions, as opposed to opting for direct access to the same set of pointers spread all over the place. People who tell me they can write a compiler just with a look-up table based search/replace approach. People who tell me programming is nothing but if statements and for loops and that encapsulation and modularity are just academic shit that no one really uses.

Better yet, I've had project managers of a scientist/EE background telling me, and I quote, "we do not need a design, by the time we are in the middle of it, code is different from the design and things changes, so a design is superfluous" (this for critical systems with SLOC counts in the millions.)

It is a meme so consistent across companies it cannot easily be dismissed as a generalization.

You, sir, don't know what the fuck you are talking about, and this mentality is the root of all the evil code monkey shit that we see in the software industry.

Re:Don't. (1)

Anonymous Coward | about a year and a half ago | (#41281381)

Thank you. Thank you. Oh, thank you. Thank you very much. Thank you. Thank you. Thank you.

Writing code is a discipline in and of itself. I am seventeen years into my career, and I still consider coding to be the single most important thing I do all day. Much of the rest of my day is spent dealing with the fact that other "software engineers" didn't pay attention in school, and the fact that "non-technical people" is a euphemism for "non-intelligent people".

Programming is an art, and there are an awful lot of bad artists out there.

"small stuff for free" (4, Insightful)

Hazel Bergeron (2015538) | about a year and a half ago | (#41278743)

I have created whole e-commerce systems for free, and that was ~9 years ago. Really, the market is so competitive right now that the only way you're going to get paid with your knowledge is thanks to everyone's favourite abuse of capitalism: information asymmetry. Find small organisations who have so little clue about IT that they think that abilities like yours aren't dime-a-dozen.

Alternatively, accept that your abilities are tools to enhance a career rather than career-worthy in themselves. Either learn to become a software engineer in the full sense, worrying more about learning than earning at this stage, or find something else that you like, safe in the knowledge that your IT skills will make you a more valuable member of any team.

Re:"small stuff for free" (2)

tulcod (1056476) | about a year and a half ago | (#41278757)

Mod parent up. I speak from first-hand experience if I say that this is how I got many jobs in IT. Personally, I created a website for a big volunteer organization, and many people got to know my name from there on.

Re:"small stuff for free" (2)

jafiwam (310805) | about a year and a half ago | (#41280111)

Or... just work cheaply.

After balancing out work, play, and sleep. Fees I would have to charge to come out "even" are pretty high. Any spare effort or time in IT stuff goes toward the obligated family and friends support. Interrupting with paid outside work would have to be paid at around $200 - $250 an hour for it to be worth it for me.

As a student or a young "getting started" person, $20 an hour for some small office IT work four times a month is worth it. For me, I'd have to charge so much that I am out of the market of the people that would hire me. Plus, that way you get to learn all the personality quirks and methods you will need for an impossibly whiny, cheap, and ignorant customer. (Of which, you will run into loads of as a professional later.)

So work cheap, do stuff like "i'll set up this and reprovision the server on this new hardware, and take $20 an hour for it, and I get to keep any hardware you aren't using anymore."

Re:"small stuff for free" (1)

jerpyro (926071) | about a year and a half ago | (#41280269)

To add to this: there are always small, local nonprofits that can use a hand with IT/Programming stuff. At first it will start out with getting their printer to work and helping them build a spreadsheet template, but if you're savvy you can suggest bringing information into a database and building a php page around it, and build out projects from there. Nonprofits will not only give you experience working with some frustrating end users who don't communicate their requirements well, but also they look great on your resume AND college applications. They also tend to provide endearing and enthusiastic references if you establish early on that's what you're working for -- and I guarantee that will be worth more than the $15/hour you'd get for your time at this point. The added bonus is that they'll be happy for any hours you work, rather than expecting you to keep a certain schedule -- so you'll have all the flexibility you want.

TL;DR: Volunteer IT services for 2-3 nonprofits in your area and establish that you only want to work for letters of reference and experience.

Re:"small stuff for free" (1)

caballew (2725281) | about a year and a half ago | (#41281223)

Also, if possible choose non-profits that have relationships and/or other volunteers from local businesses who could be exposed to you and your work. This will lead to referrals for paying jobs that could end up being lucrative as well as looking good on your resume.

Find a Mentor (1)

caballew (2725281) | about a year and a half ago | (#41281261)

As important as anything else you can do, find a mentor who is willing to help you by providing advice, critical critiques, recommendations and referrals. After ability, experience is crucial to success so finding somebody who is willing to share theirs is extremely helpful.

Don't start as a freelancer (5, Insightful)

Tim Ward (514198) | about a year and a half ago | (#41278749)

What people are hiring in a freelancer is experience and skills and experience and ability to hit the ground running and experience. Oh, and experience.

Do ten years in a proper job first to learn this stuff.

Re:Don't start as a freelancer (0)

Kergan (780543) | about a year and a half ago | (#41278987)

10 years of freelance experience also is a "proper job", you know...

You learn plenty of stuff as a freelancer that you don't in a corporate environment. Chief among them, how to get things done on a shoe string budget, and how to pick your customers, contractors and occasional partners.

Not to mention, you get to travel and work outdoor year-round if your job allows it. That's absolutely priceless, considering that most people are too broke to travel at age 20 and too old to do so at age 60.

There's nothing wrong with starting as a freelancer.

No, really, don't start as a freelancer (4, Insightful)

Anonymous Brave Guy (457657) | about a year and a half ago | (#41279045)

There's nothing wrong with starting as a freelancer.

I respectfully disagree.

As a freelancer, you need to be able to operate with a degree of autonomy. You need to be able to take general direction from a client, work out what it is that they need, and provide it. You need to find your own tools, and develop your own skills.

Coming straight out of full-time education, I don't believe anyone has the experience to do that yet. You could be the most talented and enthusiastic person in the world, and perhaps a few years down the line you'd be a great freelancer, but at the start of your career you don't even know what you're missing yet. You can be completely sincere in your desire to do a good job, and still be utterly incompetent without even realising.

Even today, after working in a few jobs as an employee and now being freelance for a while, the thing I miss the most is still the shared experience/peer review side of things. That kind of interaction can be very educational even if that wasn't your original goal, and if you're going to fly solo you need to find a different way to maintain your awareness of the industry and develop your skills. That's difficult even for someone who knows roughly what they're missing, and I suspect it's impossible for someone who doesn't.

Re:develop your own skills (1)

TaoPhoenix (980487) | about a year and a half ago | (#41279239)

Except that whole "develop skills" part is chicken and egg.
Elsewhere I offered him a chance for me to be a "mock client", aka as if it were a more serious engagement, but with a lot of leeway for stumbling. For me at least, only when faced with X specific problem did I realize I had a gap in my knowledge. I have a couple of good test case projects for him to chomp on. If I can "stump him", then that's when he will have something to anchor a week/month's worth of study.

Per a couple of other poster's comments about being hacked, one of my projects involves users and logins to the system. So whatever he comes up with, I'd just put it up as a free for all and tell the "security testers" to go break it. Then he gets that experience too, so when the topics come up in his formal studies, he's "been there, made that mistake."

Re:Don't start as a freelancer (2)

luis_a_espinal (1810296) | about a year and a half ago | (#41279341)

10 years of freelance experience also is a "proper job", you know...

You learn plenty of stuff as a freelancer that you don't in a corporate environment. Chief among them, how to get things done on a shoe string budget, and how to pick your customers, contractors and occasional partners.

Not to mention, you get to travel and work outdoor year-round if your job allows it. That's absolutely priceless, considering that most people are too broke to travel at age 20 and too old to do so at age 60.

There's nothing wrong with starting as a freelancer.

Careful there. This is typically a sure way to become a shit code monkey. If the person only cares to get a job, without caring for the train wrecks left behind, then, yeah, there is nothing wrong with that.

Experience is something you don't get out of a vacuum (unless you are naturally talented, which most of us really are not.) The best thing for someone that is starting up in this business is to get a job with a good company or good team known for having some standards and a track record of putting quality systems up.

Then you learn from people more seniors than you on how to handle the what-ifs, the corner cases, the situations when shit hits the fan, the tactics to get competing group of liaisons to work together, the ability to pry away the information required to truly understand the requirements at hand.

Once you have a few years of experience (and most important, professional connections), then you can jump into freelancing with a good guarantee that you will do a good job.

The worst thing someone starting up in this business can do is to jump into freelancing directly or go work for a shitty company, project, department, whatever.

Re:Don't start as a freelancer (1)

Kergan (780543) | about a year and a half ago | (#41280891)

Experience is something you don't get out of a vacuum (unless you are naturally talented, which most of us really are not.) The best thing for someone that is starting up in this business is to get a job with a good company or good team known for having some standards and a track record of putting quality systems up.

I respectfully disagree. The best thing one can do in this business is to create your own business upon hitting the job market -- if not before.

When the OP is done with university, complete with a few internships and several years of part-time freelancing behind him, I fail to see any reasonable incompatibility with becoming a freelance if that's his thing.

The "you need experience from working for a real company" sort of argument has no merit whatsoever for go-getters. (If it did, you'd never hear of people starting businesses at age 20.) You learn a lot more from other entrepreneurs, employees, clients, contractors, freelances you periodically partner with, forums, whatever, and by facing problems you never imagined you'd ever run into but still need to solve by yesterday -- typically the ones that make you traverse your address book and call contact upon contact until you find potential solutions.

The only realistic replacement argument I could offer is this one: you won't learn (or work) much if you work on your own, in complete isolation except for the occasional customer you interact with. As long as you don't do that, it doesn't matter the slightest bit if you're a corporate drone, a freelance or a serial entrepreneur. You'll be gaining experience over the years.

Re:Don't start as a freelancer (1)

Shavano (2541114) | about a year and a half ago | (#41279907)

10 years of freelance experience also is a "proper job", you know...

But you won't get 10 years of experience as a freelancer until after you've had several years experience of working under proper tutelage.

Re:Don't start as a freelancer (2, Insightful)

sumdumass (711423) | about a year and a half ago | (#41279041)

I think he's just trying to snake some experience under his belt without committing to a full time gig so he will have an advantage when he graduates.

Perhaps looking into charities who might need a one time thing done, seeing if he could get an internship from the regular people there if they already have staffing for it. Looking for internship or something like this at places family members work might be another job option. Even if its doing mundane drone crap that could probably be done in spare time like parsing logs with scripts or validating backups or something useless he would at least have some first hand experience in how stuff works in the real world.

I don't know what the laws are where he is from, but intern here usually mean little to no pay (definitely below scale) and no benefits. Its like a lower form of on the job training specifically for padding experience.

Full time job first (4, Insightful)

bhunachchicken (834243) | about a year and a half ago | (#41278761)

Personally, I would recommend that you get a full time job first. After a few years, when you've had time to build up commercial experience and a good couple of names on your CV (resume), you can hop into the freelancing circle.

Freelancers tend to command more money (certainly in the UK a contractor's daily rate will be more than double that of a permanent employee). There are often A LOT of people chasing these jobs, especially these days, and without proven commercial skills and those client names to back up your experience, you could well be ignored.

Start with a full time job first, get the experience and then start offering yourselves as freelance.

Re:Full time job first (2, Insightful)

tetrode (32267) | about a year and a half ago | (#41278787)

Mod parent up.

I have hired freelancers for reasons of specific experience and being able to start from 0-100 in no time.

In order to do this you need to have some years of job experience under your belt.

After some 15 years of IT experience I made the switch to freelance and with the experience I had it was very easy.

I am sure that if you set your mind to it and work in a regular job with the aim of going freelance you can do this much quicker.

Having a fulltime job will enable you to start freelancing slowly.

Also start doing open source kind of work / projects for free - as this will give you different insights that you will never get from working in a company / freelance.

Re:Full time job first (2)

richlv (778496) | about a year and a half ago | (#41279005)

Also start doing open source kind of work

this. why do we have a topic like this on slashdot every 3-6 months (well, at least the ones i notice) ?

it seems obvious to me that one is more likely if they are :
a) interested in what they do
b) can do it reasonably well
c) can show both of a and b.

if you are into IT, in high school, university or whatever and have not looked at any opensource stuff before... most likely you are not interested in the field.

by the way, we are in north-eastern europe, and we are looking for people. the problem is that most who apply do not have anything to show*.
how can one claim to be into the field and never ever felt a need to report a bug ? i'm not talking about having long patch history for some project or even being a maintainer for another, i'm not talking about writing full documentation for some software (although all that would be nice) - we have people applying who haven't heard about bugzilla. for somebody who actually wants to work in the field, i'd expect them to name at least 3 bug trackers, at least 3 version control systems and have at least a passing knowledge of 2 from each category.

so how are we looking for people right now ? well, we have partially given up on headhunters and look into opensource communities (mostly ours, as we are working on opensource software :) )

* there are some exceptions, people who have little previous experience with practical tools, but can pick them up extremely fast and are good at what they do. there are probably a few in a million, though, so think hard whether you can claim to be one of them ;)

Re:Full time job first (3, Informative)

petes_PoV (912422) | about a year and a half ago | (#41279311)

in the UK a contractor's daily rate will be more than double that of a permanent employee

Only when you look at it superficially - i.e. comparing the hourly rate with an annual salary. Once you cost in all the benefits of being a permy: paid holiday (25 days + 8 bank holidays), pension, sick pay, training (o.k. that's in just for laughs), not getting told on friday afternoon that you're no longer needed. Plus the freelancer's cost of accountancy, running the business, doing their VAT + expenses in their own (unpaid) time, time without work and driving all over the country for interviews.

When all that is taken into account, the difference is much, much less than it first appears. Generally reckon on the freelancer's rate in £££s per hour being the equivalent of a permies salary in 1000's per year.

Study (0)

Anonymous Coward | about a year and a half ago | (#41278769)

>> I would like to gain some experience (e.g. what the bulk of the jobs in various markets require, various technologies/frameworks and their usage)

Can't speak for anyone else I wouldn't take someone on freelance without the experience - there is nothing for free, even if you come in with no "salary" the cost to me in terms of lost productivity with other members of the team, delays because the work you did isn't up to snuff etc. is too much of an unknown.

You also need to have the basic experience of having worked within an organisation, what's expected from you in terms of behaviour, interaction with colleagues and basic commercial sense. (You'd be suprised how many fall over on that last one - spending x weeks on something which is of little or no real value (or far cheaper in real terms to buy in) or being unrealistic in terms of costs and timescales - I've seen sales deals lost on that one since the IT person appears unrealistic the whole sale loses some credibility).

Best way I can see is finish your studies, try and get on a graduate intake for a medium-large organisation and take it from there, once you've a few years experience it becomes a lot easier to start moving around.

University (0)

Anonymous Coward | about a year and a half ago | (#41278779)

Learning to write code is very important, but if you go to university and learn computer science for several years they will teach you to program many languages and the fundamentals of programming and object orientation. At that point I agree with the others that you can then go out and get a job to get the experience.

A few tips from a jaded vet (4, Informative)

VirexEye (572399) | about a year and a half ago | (#41278785)

When I was in high school, I made web sites for realtors. This was back in the 90s when any sorta webpage would pretty much do. Looking back, there were a lot of areas I was lacking in.

One was simple business skills. First is finding a decent niche to sell your services to. That was pretty much handed to me given one of my parents was in real estate. Apart from that though, is marketing yourself. As a skilled developer, you have the ability to bring value to other people. You have to be able to convince these people of this simple fact. This is a whole different skill/world than development. It's a skill that is equally valuable in life though.

Anyways, a few random tips. Don't undervalue yourself, your skills, and what value you are providing to others. It's probably worth more than you think. As far as payment, work out what is agreeable to both parties. This again comes down to "business skills". Also, a good knowledge of your local laws is handy where as a worst case scenario.

Finally, take what work you can get that doesn't sound horrible to you. Any work is good work. In the "real world", most jobs are not dream jobs. It's one of those sad facts of life.

Re:A few tips from a jaded vet (1)

James McGuigan (852772) | about a year and a half ago | (#41279227)

One of my first "proper" jobs involved spending six months using nothing but regular expressions to scrape data out realtor websites for www.hotproperty.co.uk

Thank you for teaching me how not to write websites and the important of semantic HTML markup!

Re:A few tips from a jaded vet (2)

frisket (149522) | about a year and a half ago | (#41279533)

When I was in high school, I made web sites for realtors

So you're the one who caused the property crash...

Advice from a senior IT professional (5, Insightful)

Anonymous Coward | about a year and a half ago | (#41278801)

Don't! Your time is better invested in actual studies, where each university credit will lead to a better position in the future job market. Study harder, study more. Writing code is done by thousands of indians and chinese, and you DO NOT want to be in a position to compete with them.

I would strongly recommend you to get out of the programming/IT sector all together. It is NOT a future business in Europe. It pays poorly, and is subject to massive outsourcing to Asia.

If you must work in IT, consider something which is close to the customer: Sales, Management, Relationship intensive design tasks. DO NOT ENTER A CAREER IN IT PROGRAMMING. You will be competing with millions of poorly paid Chinese and Indians and companies will always outsource to the lowest bidder.

I have 20+ years experience in IT, and I've seen 5 companies outsource all European operations to Asia already, and I see it happening all the time over and over again.

Study hard, study more. Study something which can't be outsourced: M.D., Lawyer, anything in construction.
  Avoid IT like the plague!!

Re:Advice from a senior IT professional (0)

Anonymous Coward | about a year and a half ago | (#41278917)

Why is the dude at -1? It's a well formed opinion.

Re:Advice from a senior IT professional (0)

Anonymous Coward | about a year and a half ago | (#41280143)

grass is always greener...

Lawyer: flooded with graduates from low-quality schools. Either you graduate from a top school, or you never pay off your debt
MD: high malpractice insurance. hundreds of thousands in loans, and a decade+ education.

Re:Advice from a senior IT professional (0)

Anonymous Coward | about a year and a half ago | (#41280551)

I am going to second this advice. I have had more than 20 years in IT, and if ANYTHING related to IT programming doesn't get outsourced, it heads to a cloud provider, or the company puts up a want ad demanding full CISSP certification with a TS/SCI clearance for a $14/hour job. Of course, nobody takes it, so they promptly get their H-1B and whine to the press that the US has no good IT people. Programming is a dead-end career unless you manage to find a startup with some bright people who are not yet chained to getting max sales from the next quarter.

IT as a sysadmin, you can find stuff, but oftentimes, you are competing with the H-1Bs because of the tax benefits that they come with. However, all companies need some form of admin staff on hand because the routers don't admin themselves, and someone has to be physically on site in order to hit the reset button when something completely f-s up.

My recommendation: Grab a LSAT study manual, and grok that. Then go and take the LSAT. After that, find a way to enroll in some law school. A tier 1 is nice, but a lower tier is sufficient because you are shooting for the bar membership, not to be a senior partner with Ben Dover & C. Howlett Fields. The bar exam takes a bit of studying, but if you can do a MS-ITP or CISSP exam, you can swing the bar. Now, with your state bar membership in hand, you can go and actually find a career.

Where companies need people are compliance experts. SOX compliance, FERPA compliance, PCI-DSS compliance. The big bucks are turning the legalese of these regulations into policies that the Windows admins can push out from the AD forests. The job is simple. Do your eight with getting things ready, then out the gate. The only time you might have to work more than that is if your company is being audited. Then you might have to go through documents to make sure every i is dotted, and t is crossed.

There is also IP law. It doesn't take much for a company to be bankrupted by not realizing they just stepped on someone else's patent. Companies pay big bucks to have a legal department look over every inch before something ships.

Yes, law is boring, but having law + IT will ensure you a real future, not just going to the data center so you can reboot a rack of Windows servers due to some glitch.

If you cannot stand law, there are CPAs and CIAs. Just like a lawyer, every company needs an accountant to make sure both sets of books are balanced, and the internal auditor to make sure only the top brass is getting away with stuff.

As for IT, I followed my heart since I like the field, but really, I regret it. The top tier positions in management come from a completely different source, usually the MBA pool, and you are ending up with the crumbs left behind after the H-1Bs are hired, and the H-1Bs will be rocking the office politics like no other in order to get your ass out and one of their nationality in every single day.

CAPTCHA: culpable. Somehow very ironic.

do stuff (0)

Anonymous Coward | about a year and a half ago | (#41278811)

If you don't wanna study, get noticed through work in open source projects. You will gain experience and once you're good at what you're doing you'll get offers. If you're out for the money, all that Java bzzzzness bullshit pays very well. The more you're willing to sell your soul (Banks, Pharma), the merrier. But as a programmer this kind of work is not satisfying. If you wanna become a good programmer do various projects with various languages. And don't shy away from doing lower-level stuff. C is still king.

Anyway, you're from Europe, so go to one of them free colleges. You'll meet interesting people and gain connections into the Industry. Do internships, cause that's where you really learn how to code and how to work in larger groups. Some companies keep ex-interns around as well paid freelancers, but that depends how indispensable you made yourself for that project.

Re:do stuff (1)

frisket (149522) | about a year and a half ago | (#41279545)

Anyway, you're from Europe, so go to one of them free colleges.

Ain't no such animal any more.

Re:do stuff (1)

CRCulver (715279) | about a year and a half ago | (#41279933)

Sure there are. Finland continues to offer free university education even to non-EU citizens.

Re:do stuff (0)

Anonymous Coward | about a year and a half ago | (#41281203)

Free projects don't do that well. HR looks at that, considers that as pertinent as working on some off-off-off Broadway play and continues to round-file the resume.

Want to get ahead? Get certificates. The pretty pieces of paper mean to the PHBs and HR that you are worth hiring, in their world.

Best advice: (0)

Anonymous Coward | about a year and a half ago | (#41278823)

Don't.

Obligatory (1)

pswPhD (1528411) | about a year and a half ago | (#41278829)

1- Post question on Slashdot
2- ???
3- Profit

Re:Obligatory (3, Interesting)

pswPhD (1528411) | about a year and a half ago | (#41278843)

Seriously though, if you just want experience, what about helping out some open source project? Pick something you can keep your interest in, and the moderators on the project can suggest how you can improve your code. It seems from the above advice that freelancing is more for experienced coders. This would improve your own code, help the project and look good on the CV/resume.

How to make it (0)

Anonymous Coward | about a year and a half ago | (#41278831)

Steal the identity of a successful freelancing company.

Study hard (2)

maroberts (15852) | about a year and a half ago | (#41278839)

Have a BSc or better (normally in Computer Science or similar IT degree), plus several years real job experience. As someone has pointed out, being a significant contributor in Open Source projects may also get you noticed.

It doesn't rule you out of being an IT freelancer, but I suggest you plan an educational and career path, as good pay only comes with good qualifications or job experience.

Re:Study hard (2)

Keruo (771880) | about a year and a half ago | (#41278869)

Have a BSc or better (normally in Computer Science or similar IT degree), plus several years real job experience.

I truly have to wonder why this has become the norm in IT.
Do you really need BSc or better degree to admin windows servers or do basic support?
The OP sounds too young to do successful IT freelancing, but then again I know few people who started their companies during/after high school and are still in business.
Best option would be to find apprenticeship from some medium sized company. Sadly those seem to be nearly impossible to find these days.

Re:Study hard (1)

shobadobs (264600) | about a year and a half ago | (#41278977)

The OP wasn't really talking about IT, despite his use of the word. He was talking about software engineering.

Re:Study hard (2)

petes_PoV (912422) | about a year and a half ago | (#41279015)

I truly have to wonder why this [ needing a degree + experience ] has become the norm in IT.

The answer is simple: it weeds out a lot of potential candidates.

IT work is a cushy number. There's almost no way to gauge the effectiveness of a worker (how to you quantify their creativity?). You spend your working day seated, not having to speak to the public, out of the weather, with little in the way of professional standards to meet and with very few restrictions of how you work.

Because of that, everyone who can't get a job in other sectors is attracted to IT and therefore if there weren't any barriers to entry, every HR department would be flooded wit worthless applications from all directions.

Re:Study hard (2)

drinkypoo (153816) | about a year and a half ago | (#41279061)

I truly have to wonder why this has become the norm in IT.
Do you really need BSc or better degree to admin windows servers or do basic support?

Aside from that the author was discussing programming, there is also the issue that the job market is clogged with unemployed people with four year degrees. If you don't have at least that, people will mock you. On the other hand, as a contractor you don't need to provide your degree, just your CV. Oh, no CV? Time to get cracking.

Re:Study hard (1)

frisket (149522) | about a year and a half ago | (#41279557)

Have a BSc or better (normally in Computer Science or similar IT degree), plus several years real job experience.

I truly have to wonder why this has become the norm in IT. Do you really need BSc or better degree to admin windows servers or do basic support?.

Not when it's all working. You need the knowledge when it falls over, or when it needs redesigning, or when you need to call bullshit on some PHB's random ideas.

Re:Study hard (1)

LinuxIsGarbage (1658307) | about a year and a half ago | (#41279631)

I'm surprised how many readers of this site don't understand that "IT" contains two branches:
-Operations (system admin, desktop support, etc)
-Development (programming)

And assume anytime there is an article talking about "IT", the article is talking about whatever branch they are in.

In the case of the article, it says "Key areas are web development, app programming and scripting.", which sounds to me to be the development side of things.

Rules of Freelancing (5, Informative)

Shinobi (19308) | about a year and a half ago | (#41278865)

Having worked as a freelancer for most of my worklife, I can chime in with a bit of stuff.

First of all, personal traits:

Self-discipline, self-discipline, self-discipline. You need this to complete your contracts on time, in accordance with the contract. It means being able to sit down and do everything required to fullfill the contract. It also means being able to work with people you dislike on a personal level. It means maintaining a clean, whole persona. No, it doesn't mean three-piece suit, but it means not showing up in tattered jeans, faded t-shirt etc. It means having the discipline to tell your friends that you can't spend time with them if they have a day off, because you need to stick to your schedule. Discipline enough to hold on to your money, because you never know when you'll have a 2-3 month dryspell.

Also, maintaining separate accounts for personal use and professional use, as well as separate hardware etc

Integrity:

Accepting a contract is your word. You have to stick to your end of the contract, otherwise your reputation will suffer. And reputation is EVERYTHING. Do not accept contract that you can't complete, even if the lure of the money is strong. If you believe it's highly unethical to complete a certain contract, feel free to not take it(This is one of the major perks of being a freelancer, not being a wage-slave). Never ever blindly accept your potential clients estimates of time required etc, always do your own estimates BEFORE accepting the contract. If the client is trying to keep you from doing that, they are out to try and get you to work for free, or at least really cheap. Do not EVER complete tasks/favours asked of you by the client that fall outside your contract. Stay out of the office politics. Maintain customer confidentiality within the boundaries of the law and your ethics. I won't sell out my clients data to any competitor of theirs, but if I become aware that the data I'm working on is evidence for a crime, I'll contact the police. I will NOT make myself an accomplice.

Other things:

Try and go into a niche field. The more general areas are oversaturated. You can't throw a stick without hitting a "html/SOAP/PHP/PERL/JAVA/Social Media "expert"". Comp sci PHD's are becoming fairly common that it's close to employers market. There's a shortage of competent software engineers on the other hand, especially for embedded stuff(counts 40 offers listed on agent's summary, while only one of us who works with the agent is currently available for a contract.....)

ALWAYS retain the services of a lawyer when evaluating and negotiating a contract. It will save you a lot of headaches as clients try to catch you in horrible penalty scenarios in the fine print, or even clauses that are completely illegal. Go for solid but not flashy reputation, preferably one who also wants a long term client relationship. If a client says you don't need to bring a lawyer because they have retained the services of one for you, politely tell them you're not interested, because they ARE out to screw you over.

Likewise, an accountant is a good service to retain, to keep track of your economy and keep you grounded in reality. As with the lawyer, go for a solid but not flashy reputation, and who is interested in a long term client relationship.

An agent is also a good thing to have if you become proficient and sought-after. In my case, my lawyer is also my agent. He receives the contract offers, reads them through according to the guidelines I've set for what offers I'm interested in, and if it's something he thinks fits the criteria, I get them forwarded to me. He also maintains a list of more general offers that any of us who retains his services can inquire about

In terms of payment, I use escrow and direct transfers primarily, sometimes invoices. I NEVER accept cheques, which makes quite a few potential US clients rather unhappy.... The reason for escrow is to make sure the client has the ability to pay, and from the third-party escrow account it's then directly transferred to my account.

Always always always maintain up-to-date working back-ups, including offsite. Do not trust the "cloud", because it's not your data, it's your client.

Always plan for sickness, either your own or those you care for. Include that in your time estimates. Also include extra time for debugging and troubleshooting.

Many clients will posture and puff themselves up, but in most cases the truth is that they wouldn't have to hire you if they actually did. In some few cases, however, they do have the competence, but they are tied up with other projects that take all their time.

Watch out for working with academia: It can be rewarding, and most people are pretty chill, but there's a SERIOUS attitude problem in some individuals that stems from being severely overstudied and having been secluded in academia for too long. Those people can make your life hell, because they are the ones who will nitpick on everything, even when they are wrong, because "in theory, this thing is superior, and you'd know that if you also had a PHD"(Assuming you have infinite RAM, infinite bandwidth and infinite CPU power of course, and can perform both classical scalar as well as full quantum computing....)

Freelancing is hard, but can be very rewarding, and I wouldn't voluntarily go back to being a wage/salary slave again. The ability to schedule realistically, the ability to say no to clients who give the impression of being utter assholes, or downright sociopathic etc are all incredible improvements to quality of life, IF you are disciplined enough to deliver on your promises, and the integrity to stick to it. And remember, your reputation is EVERYTHING. It will affect what contracts you'll be offered in the long run, how potential clients will treat you in person etc.

Re:Rules of Freelancing (0)

Anonymous Coward | about a year and a half ago | (#41279013)

comp sci PhDs are becoming common ?

Really ?
    I'm 51 and a programmer / network guy since Amdahl UTS ... and I don't know a one. Or at least any that identify themselves as such.

Re:Rules of Freelancing (1)

Shinobi (19308) | about a year and a half ago | (#41279037)

At least here in the nordic countries, the ratio of doctoral studies graduates relative to the job market as well as the population as a whole is fairly high, so yes, it can be called fairly common in terms of the specific job market that is software development.

Re:Rules of Freelancing (2)

rmstar (114746) | about a year and a half ago | (#41279131)

Fisrt of all, thanks for your very nice summary!

What do you mean when you say "Comp Sci" PhDs? People with these [wikipedia.org] skills? That's interesting and it would be nice if you could elaborate.

Re:Rules of Freelancing (1)

Shinobi (19308) | about a year and a half ago | (#41279623)

Comp sci is an abbreviation for Computer Sciences, and in conjunction with PHD or grad or similar is used to denote someone who studied that particular discipline in academia.

Re:Rules of Freelancing (1)

rmstar (114746) | about a year and a half ago | (#41280415)

Comp sci is an abbreviation for Computer Sciences

Ok, so not computational sciences.

I hoped to hear any anecdote or anything at all about your observation that the market is beginning to get saturated. How did you reach that conlusion?

Re:Rules of Freelancing (1)

Shinobi (19308) | about a year and a half ago | (#41280533)

Less demand for it when corps are shopping around for people to hire, and some of the people I know or have been a sort of mentor for tell me that no longer are wages and perks anywhere near as flexible as they used to be.

Re:Rules of Freelancing (2)

Relyx (52619) | about a year and a half ago | (#41279453)

Excellent post.

I'd just like to reiterate how important it is to have access to a good lawyer. Although most of your clients will be decent people, there will be one or two who turn out to be complete assholes. With experience you get better at spotting these people sooner and avoiding them. Alarm bells include: Being hard to reach, not returning your phone calls in a timely fashion, pleading poverty/extenuating circumstances, and asking you to start work at too short a notice. The parent also mentioned attempts to push a dodgy contract on you. These point to poor management skills, incompetence and general shadiness. Agreeing to work for them may be far more trouble that it is worth.

If they think you are just a lone freelancer, they may try to bully you into doing things that you do not agree with; that are detrimental to your livelihood and mental health. This may be "going the extra mile" and working extra hours for free to keep them happy. At worst, they may simply not want to pay you, thinking they can get away with it. This is when you need a lawyer to back you up. It sounds crazy I know, but there are people out there who will take your work and run away laughing,"So sue me!"

The parent's escrow suggestion is a good idea. You can also stipulate certain milestones in the contract at which you are paid a certain amount. A deposit up front is one way of testing the client's ability or pay. If there are sign of them having trouble, walk.

Re:Rules of Freelancing (3, Informative)

Shinobi (19308) | about a year and a half ago | (#41279605)

The attempts to bully lone freelancers is more common than most non-freelancers want to believe. And the worst offenders aren't the big corps, it's often the medium sized corps who want to grow big, and have thus hired the real slimeballs that are too dodgy even for the big corps.

About the milestones, yes, I often do that, either in terms of project achievement, or simply a monthly payment if that is how the contract is defined. That depends a bit on your reputation. If you have a good rep, some clients will actually be more willing to just do monthly payouts, instead of based on achieved goals, because they know that snags can happen, and if you've hit a snag, that's understandable.

Something I forgot to add to my summary: Never ever ever EVER lie to or mislead your client. If you've hit a snag, TELL THEM.... What, why, how, where, when. Unless you've accepted a contract from a slimeball, they will understand. And if you've done your preparations properly, you'll have scheduled time for dealing with problems.

Another thing I should have added:

Acceptable behaviour:

Do not whip out your phone in the middle of a meeting unless it is directly tied to the meeting. If a meeting drags on, politely asking if you can take time to call your family to say you'll be late is ok. Calling your buddies to say you'll be late for that drink is most often a big no-no(And I've found that when it's not, it tends to be a rather annoying place to work at...)

Mindset:

As a freelance software developer, you are responsible for maintaining your code etc. Since you live on your reputation, you can't adopt the mentality of either big corps or open source that you are not responsible for the code, that it is delivered as is. If you write shoddy code, your reputation will suffer, and you don't have a PR department to deflect from that hit to your reputation. Also, the more buggy your code is, the more disturbed and disrupted weekends/holidays/vacations you will have.

Also, if you go into embedded development, unless you do R&D, forget everything about Agile, Release Early&Often and similar. Your code can go into hundreds of thousands of units that don't have a network connection, and thus need to be recalled if they are to be patched. Your project has to be solidly designed and then implemented and tested, before the first release.

Probably it's best not to do it. (0)

Anonymous Coward | about a year and a half ago | (#41278905)

Cover your arse! Web stuff is likely to get hacked. You need to make certain that you know what you do. If you don't have any experience, get a normal job and learn. Put in the hard work to get your skills up to par. Make a name for yourself in the company that you work for at the moment. It's good to be known as the guy who gets things done, even if this means unpaid overtime. When you start freelancing you can even get a contract with your current employer or at least some recommendations.

There is good money to be made by people who know what they are doing. The problem is there are very few of those and that's why I'm not a freelance :) There is less money to be made if you don't know what you're doing. In theory, you could learn the job while on contracts. That's the ideal world, but expect to put in loads of hours and try to make certain you know people who can get you out of trouble.

It might also be a good idea to invest some money in a rig where you can simulate a work environment, so you can code at home.

Good luck... (1)

jonwil (467024) | about a year and a half ago | (#41278911)

Around here the only way to get a job of any sort in software development is to have a few years of commercial experience in whatever technology they are using.

Send out offers (1)

udachny (2454394) | about a year and a half ago | (#41278925)

Set up a corporation (corporations are people [slashdot.org]), set up your website with credential, contact, maybe a price list (per hour or per job, whatever), send out offers to companies and to people about your services.

Of-course it's not going to be easy, but you asked the question "how to begin", not "how to really make it a success".

My 2 cents (2)

mihai.todor85 (1663759) | about a year and a half ago | (#41278959)

It's quite funny that people with modest coding skills still believe that they can make good money as freelancers. Putting aside the rare occasions when you find (a fat pigeon) some clueless and wealthy investors, if you're not backed up by some company with a nice portfolio, then you're usually out of luck. A few years ago, I was digging around sites like rent-a-coder to see if it's even remotely feasible to make some money as a freelancer. What I found was a swamp of "experts" who were willing to code youtube clones for 100$ and small companies that posed as users with perfect ratings. My conclusion is that if you're good enough and you have many years of experience in the industry, then you're better off as a consultant for (big) companies, paid by the hour. Otherwise, just find a nice job at a company that's willing to invest time in training you, and, heck, you might end up learning how to code while making some money as well.

Re: willing to do some small stuff for free (1)

TaoPhoenix (980487) | about a year and a half ago | (#41279017)

I'll reply to you, though offhand I'll remark that I can't find any replies yet by the Submitter.

I had a small project on one of those sites for a little while where I put up an incredibly simple program commission, then see of the few people who replied, who didn't walk into basic proofreading blunders.

Hey Submitter, if you're out there and reading these notes, dig me up, I need a few small things done!! In return, I'll give you a rating as a Slashdot User who is at least modestly respected by the crowd as not being a shill.

Re:My 2 cents (0)

Anonymous Coward | about a year and a half ago | (#41279549)

I think it depends where you are. I've north of 5 years experience and get calls regarding freelancing gigs all the time. Thats not to say that I'd definitely land any, just that there is a lot in the general area and they're paying resonable rates. These sort of roles aren't really in comparisiom to rent-a-coder, especially considering the former requires me to compete with only folks in my local area, where the expectation is you know your shit, have experience, and will spend at least some of the time face to face.

Just do it. (1)

AlXtreme (223728) | about a year and a half ago | (#41278983)

Simply start doing small, simple projects next to your regular studies, whatever helps out others and if it pays the bills even better.

Your goal shouldn't be looking for the most large, lucrative projects, just keep it simple so you can gain experience with freelancing without too many headaches. Your long-term goal should instead be amassing a large network of people who know you and who see you as an (up and coming) expert.

Freelancing / consulting has everything to do with the people you know. The larger and more diverse your network, the easier it becomes because there will always be plenty of people looking for someone like you.

This takes time so my advice would be to continue studying, working on open source projects and taking a part-time job so you can gain experience and contacts. Once you're a few years down this road you'll know when you are in a position to become a full-time freelancer: you'll get more work thrown at you than you can cope with.

Freelancing in Europe is different (4, Informative)

petes_PoV (912422) | about a year and a half ago | (#41278993)

You say you're from "Europe" (does that just mean you were born in a european country, but have moved elsewhere - or that you are a legal resident and intend to work in a european country? the difference matters and is huge). Assuming you are hoping to get a job in a european country you need to be aware of the employment laws where ever you are.

You cannot expect to say "I've just finished my secondary education .... I think I'll become a freelance programmer". Nobody will touch you. The first thing you need is experience. The second thing you need is more experience. After that, you need to demostrate a good, long, relaible history of producing successful results in sectors that have lots of vacancies.

You will also find that in some european countries, no company will hire you directly as the employment and tax laws could make the company liable if you fail to pay your taxes. The company could also find that i'ts taken on an employee, and that you have employment rights (long holiday entitlements - 25 days paid, min. , sick pay, pension, and/or that you are unsackable if you "contract" there for too long.

The first thing yo need to do is research the laws in your country, get a degree, get some experience and then consider whether the eceonomic situation in 3 or 5 years time is suitable for a freelance worker.

Re:Freelancing in Europe is different (1)

Kergan (780543) | about a year and a half ago | (#41279403)

You cannot expect to say "I've just finished my secondary education .... I think I'll become a freelance programmer". Nobody will touch you. The first thing you need is experience. The second thing you need is more experience. After that, you need to demostrate a good, long, relaible history of producing successful results in sectors that have lots of vacancies.

That's only true if you try to sell your services to larger-sized businesses.

Most small businesses happily hire freelancers, whether in the EU or elsewhere. Any freelancer, really. It's a matter of picking up your phone or meeting the customer in person to present yourself. Almost literally "Might you have a few minutes to discuss your potential needs for IT help?" Most small businesses have very real IT needs that are poorly catered to, if at all. They're usually overworked and understaffed, and cannot afford a permanent, competent IT presence: whoever tinkers IT best usually takes care of it. More than a few small businesses are extremely happy to have the name of a local freelance or two on file.

Adding to this, small business owners invariably know each other in small to mid-sized cities, by means of entrepreneur clubs, meet-ups or simply running into one-another on a regular basis. If you make a few happy, you get phone calls from their business owning buddies.

You end up doing all sorts of odd jobs at first, ranging from setting up or changing a small web site to helping with PC installs and upgrades or cleaning up a virus-soaked PC, but it's an excellent way to establish business connections once the word is out. And inasfar as I read TFS, those jobs are exactly what OP wants.

You will also find that in some european countries, no company will hire you directly as the employment and tax laws could make the company liable if you fail to pay your taxes. The company could also find that i'ts taken on an employee, and that you have employment rights (long holiday entitlements - 25 days paid, min. , sick pay, pension, and/or that you are unsackable if you "contract" there for too long.

What you describe is for part-time or temporary employees.

When freelancing, customers contract with your company or some corporate version of yourself (the exact legal shape varies by country). In fact, one of your potential selling points is that they get to work with you without the hassles related to you being an employee. Your company/corporate self is responsible for paying taxes, pensions and what not, and that is something you usually hire an accountant for. (Asking the local chambers of commerce/Companies house also works.)

That being said, the OP should more simply ask around to know how individuals who clean houses or teach music are set up. He probably wants the same status (if it's legal) until he's either done with school and university or taking on large projects.

Re:Freelancing in Europe is different (3, Insightful)

petes_PoV (912422) | about a year and a half ago | (#41279589)

Most small businesses happily hire freelancers, whether in the EU or elsewhere. Any freelancer, really. It's a matter of picking up your phone or meeting the customer in person to present yourself.

Not a single chance - except maybe in the moves. The same movies where you can always park right outside the building you're visiting. Where the person you need to see just walks in through the door as you're about to leave. Where .... well you get the picture.

The cold hard reality is that for a lot of "europe" the under-25's unemployment rate is well over 25% and that includes stacking shelves, washing cars and cleaning toilets. There is no chance whatsoever of some kid just out of secondary school walking in to a programming job - unless they happen to be related to the boss.

In fact no small business on the planet will give any "phone time" to cold callers of the "gizza job" variety. If they did, they'd never have time to do any work, themselves. Those SMEs that do have any need for casual IT work generally give it to a relative of the employees: Fred's son/daughter who does a bit of work during the holidays - never to some unknown who says "I wanna be an IT freelancer".

Sorry to burst your bubble, but nobody has ever, in the history of computing, just "picked up the phone to discuss your potential needs for IT help?". It just never happens - except in the movies.

Re:Freelancing in Europe is different (1)

Shinobi (19308) | about a year and a half ago | (#41279659)

I'm from Sweden, and I've worked as a freelancer most of my work life. And yes, you can get into freelancing from the start, some people do it while they are still in school. There are many small projects that only takes a few weeks etc.

Many places are happy to toss easy contracts out that way, because they also get to test a potential employees abilities in a real-world scenario that way.

No, you can't jump straight to the big contracts, you start out small. In my case, I started out by doing visualizations of stuff for various clients, including academic departments, since I had a background in 3D graphics, shader and lighting programming in addition to my other programming, so I could rewrite renders to the point that they took 1/3rd of the time, but still had the same look.

Working as a freelancer requires the right qualities... In many ways, they are the same qualities required of special forces operatives: Self-discipline, integrity, communication, planning... And to always remember, Who Dares Wins. A freelancer who is afraid of failure and is thus tentative and overly careful will rarely succeed.

find your niche (1)

e3m4n (947977) | about a year and a half ago | (#41279023)

stay away from the mainstream .. ie dont just become another windows administrator moron.. there's thousands of them competing for the same position. In fact there are so many that I watch them compete for jobs that pay half of what the same skills would have paid 10 years ago. Learn some of the more specialized tools. My best advise is to run 2 or 3 linux servers in your home working on building up a few skills. Learn the ins and outs of how sendmail actually works. become an expert on IP networking. Learn what a subnet really is, why we have subnet masks, how to break a netblock into smaller subnets. Learn what a 'gateway' really is and what route statements actually do. Delve into layer2 as well. Learn what a VLAN is and how 802.1Q tagging works. Having a solid understanding of networking will go far to give you a generalized set of tools that will enable you to support a broader platform of products. By running a few linux servers you will learn the in's and outs of services like DNS, NTP, SMTP, IMAP4, and POP3. Even if you were tasked to support a windows server, the deeper understanding of these protocols will give you the tools to reverse engineer some other flavor of software that does the same protocol (such as exchange). Since linux is not a point-and-click or find the right answer in a pulldown option sort of OS, it forces you to learn at a deeper level. I would also recommend installing Asterisk on one of these servers and become well versed in the command-line programming of the asterisk dialplan. Asterisk is a very prevalent phone system and understanding it will either give you the skills to support companies running asterisk, or at the least the skills to work with any other SIP softswitch

as far as payment, invoicing someone from paypal is a good option. If you build up enough work you can cut 'discounts' by selling blocks of prepaid hours. That avoids being ripped off.

Re:find your niche (1)

Dr. Smoove (1099425) | about a year and a half ago | (#41281413)

not bad up until the asterisk advice... this is the kind of shit that falls on IT at smaller companies, and it is universally hated. not the kind of work many people aspire to doing.

I recommend splitting all projects into two-parts (2)

ezakimak (160186) | about a year and a half ago | (#41279029)

When bidding a project, I recommend you split it into two:
1) scope and prototype
- enumerate exactly what the features will be
- create a mock-up of how it will look and function so the client can visualize what the scope includes
2) the actual implementation of (1)

Clients never know exactly what they want. Even after seeing it and using it, often they discover it's not quite what they needed. This causes feature creep--which is the bane of all software projects. You have the conundrum:
a) you charge a flat fee for the project, meaning the client gets infinite features for a fixed rate and you lose
b) you charge an hourly fee, meaning the client feels screwed the more they realize they forgot stuff or didn't originally understand it well enough to tell you "right" the first time

I've found that this approach allows you to help mitigate this. Do (1) at possibly a lower rate than (2), and even do (2) at a fixed fee if you are confident in your estimation of the work involved, but only after (1) is complete and they sign off on everything in the scope and how you've demoed it to look and feel.

Re:I recommend splitting all projects into two-par (1)

ezakimak (160186) | about a year and a half ago | (#41279033)

Obviously, you can lather, rinse, and repeat this as they discover new things that they want--but doing this cycle keeps everything fair.

Re:Clients never know exactly what they want. (2)

TaoPhoenix (980487) | about a year and a half ago | (#41279103)

To be fair on the client side: In many ways we can't know what we want, it's like Jeopardy - we don't have the knowledge to ask the right questions. I've commissioned a few small things here and there, and I much prefer a dev who will warn me if I make a mistake in my wording that entails 500 hours of work, rather than just clunking down to it, only for me to discover "well, my 7 hours of paid time vanished, and the dev didn't bother to tell me that what I asked for could never be completed in that time."

Meanwhile, of course this young guy should continue to study, but actually trying his hand at writing some real code gives context for those studies. Let's say he takes me up on my offer to give him some small things to thrash around on. When he comes up against specific problems in my assignments, then later when he studies, he'll remember "oh, yeah, if you don't do ____ and ____ and ____ when making X kind of program, Bad Things happen." THAT is the fundamental flaw in college - your basic theory might be good, but when it comes time to solve actual coding problems, there's no substitute for having hands on practice.

Re:Clients never know exactly what they want. (2)

ezakimak (160186) | about a year and a half ago | (#41279445)

I agree with you completely.

One other issue that bosses and clients seem to be unwilling to accept sometimes, is an "I don't know" estimate.
No matter how similar problem A may appear to problem B, quite often the details may be such that the developer cannot really know how long it will take--it's different enough that it's essentially a new problem to solve. Often times, solving a problem is exactly like finding your lost car keys--you just don't know how long it will take you. These scenarios do occur, and they frustrate all parties--the boss/client demanding an estimate, and the developer who is struggling to not be forced to give a WAG and later be called out on being wrong. No matter in which direction he's wrong, both look bad--if it takes far less time, then he is suspected of padding other things, and if he takes much longer, he looks like a bad estimator or worse--a poor performer.

Portfolio and CV (4, Informative)

James McGuigan (852772) | about a year and a half ago | (#41279047)

I have worked freelance/contract almost my entire life, despite leaving school at 15 and only getting an Open University distance learning degree in Computer Science.

The most important thing you need is a portfolio of work that you can demonstrate. This is "proof" of experience and counts for more than almost anything else. Having a university degree is a more of a tickbox line item on your CV, at least it is when you have one, though you may have work harder at proving yourself without one.

The trick to building up a portfolio is: find a problem and then solve it. This is the entire essence of IT contracting/freelance work, people have problems and they need help to solve them. The best way to demonstrate that you are in a position to solve somebodies problems, when you are asking them for money in exchange, is to say "I can do this, I solved a similar problem for X, Y and Z, this is how I did it and I can do the same for you". The catch-22 of the contracting world is that it is difficult to get experience unless you already have experience, and even when you do have experience you can get a little stuck inside a niche.

Individuals, charities, NGOs, online communities are all places that often lack money for "professional" help, but may provide an useful source of problems that need solving where you are not going to get out competed by lack of experience. Compared to an individual who knows nothing about computers, you are highly experienced. There may not be much money involved in such projects, or any money at all, but this also gives you the freedom to say "let me go away and play with this for a while and see what I come back with" and deliberately try to stretch the limits of what you can do, rather than being tied to "I will deliver this specific spec by this specific date for X amount of money". Any job or project that you do, even if it is not paid, is 100% valid to go on your CV (you don't need to mention money on your CV).

My first website I built, www.starsfaq.com was a very simple HTML and just a collection of everything I could find out about an online game. Later I had a girlfriend who was an activist and she convinced me to build www.earthemergency.org which required writing slightly more "pretty" HTML and www.sustainable-society.co.uk which gave me the challenge of writing a database driven Content Management System (CMS) from scratch using PHP. During my first "proper" job-interview for a tiny digital agency, I had a 5 page CV of small unpaid projects like this, websites and small desktop utility programs, plus an unpaid job being webmaster and IT manager for a startup NGO www.worldfuturecouncil.org. I was asked to show code samples of my previous work and managed to get the job. It only lasted three months, and I admit to making a few mistakes during that "first" job, but getting fired from this "perm" job was one of the best things that ever happened to me. I put the job down on my CV, added all the agency projects I had worked on to my portfolio list, knocked off a couple of the smallest projects from my portfolio (that now look "silly" compared to a couple of small "commercial" portfolio items) and went right back onto the job boards with a full time mission to find myself another job. My CV now looked twice as good as it did before and I had "recent" work experience in a full time job. Chance then sent me my first "contract" job, doing 6 months of web scraping for www.hotproperty.co.uk getting paid by the hour, the job after that landed me back in a digital agency www.idmedia.com where I got to do my first "big" website, the now defunct www.sugarmagazine.com. A few years down the line and I managed to get big name brands, and big brand money, working at www.ft.com, www.premierleague.com and www.barclays.co.uk

Each contract, usually working 9-5 and getting paid by the day, tended to last 3-6 months and in each case was a stepping stone to bigger and better projects and bigger and better brand names, and bigger and better rates. During the ascendancy of my career, I always made a point of asking for more money than my previous contract, and tried to see how far I could push it while still getting new work, its only recently after many years that I think I have discovered the cap on market rates for a senior developer in my specific niece. In order to significantly higher daily rates (which are at least twice what a permie would get), I would need to find a way to switch into a different software niche, but as I have said its difficult to get experience unless you already have experience.

Sites like http://www.freelancer.co.uk/ [freelancer.co.uk] and https://www.elance.com/ [elance.com] will give you easy access to a list of "problems" but it does mean you will be competing against hundreds of nameless Indian developers offering to work for pennies. Building an iOS/Android app doesn't make you money upfront, but may help to create a small passive income stream if you become popular, plus you can always pull it out of your pocket and say "I made this".

For proper paid contract jobs, where you get paid a day rate, have a look at http://www.jobserve.com/ [jobserve.com] http://www.contractoruk.com/contract_search_wizard/ [contractoruk.com] and http://jobsearch.monster.co.uk/it-software-development+temporary-contract-project_48 [monster.co.uk]

My search strategy when I started using these boards was to make a list of my own personal criteria (location, rates, skills etc) and then apply for each and every job on the board that fit the criteria. Job hunting like this was treated as a full time job and would usually take a week or two to find work. Each time I repeated the process I would become slightly more picky as to which jobs I would apply for. 99% of jobs on these board are posted by recruitment agents who often get a 10-20% percentage commission on top of anything you make, they handle the legal paperwork and rate negotiation. There are hundreds of them all trying to find a matching CV to the spec that they have been given for the role, but often roles are filled quite quickly and there are also lots of people hunting. In the early days of my job hunting career, I would often apply for 100 jobs, get 10 agent responses (they will never contact you to say the job is now dead), 2-3 client interviews and hopefully 1-2 job offers.

Get ready for Failure (1)

MrKaos (858439) | about a year and a half ago | (#41279069)

because it's fairly normal. I'm not being negative, it's called "Negative Analysis". I started freelancing about 20 years ago and not only do you have to be good technically, you have to work on your soft skills, and your commercial skills. Business people are tricky and you have to be able to play on their level. You are green, you will be ripped off, get ready for it and figure out how to look after your cashflow.

Don't worry about failing, for whatever the reason, pick yourself up and keep going. Don't expect to get rich quick because it's not going to happen. The freedom is great but the responsibilities can keep you awake at night far too often. Put aside time for personal development because you have to remember that you are the product.

Are you good at accounting, learn, done the invoicing, learn, purchase orders, learn, marketing, learn - do you know what your business does, learn that too. You will wear a lot of hats so you may as well learn how to wear them while you are young and have the energy and after you have learned how to work hard you will learn how to work smart. Don't worry about the 20 years experience you need to have to be a consultant - that will come later, just get good at something, preferably something you love to do, do it well and offer that service.

People will say you don't have enough experience and you don't, so just go out and get the experience. The attitude you develop in business to adversity will bring you an optimism and enthusiasm that is infectious, then you will discover how employable you are when you need it.

Make failure your friend and success will seek you out.

Re:Get ready for Failure (1)

Relyx (52619) | about a year and a half ago | (#41279561)

One thing to bear in mind is that there are different degrees of failure. Breaking even on a job or losing face are unfortunate but you can ounce back from those. Indeed, a lot can still be learned from the experience. Bankrupting yourself is much harder. Often when people talk about accepting failure, it usually more along the lines of handling disappointment and facing up to certain realities. Losing all your savings, your house - even your family - is a whole other state of affairs, and one which destroys lives. Judge your opportunities sensibly, take calculated risks but do not be reckless.

Be prepared to start small (0)

Anonymous Coward | about a year and a half ago | (#41279333)

When I needed an income and decided to drop back on my programming skills, I recognise what others here are saying in that I was competing against a very large base of other freelancers charging very low rates. My first job was from a freelance site where I was able to complete the job quickly and present it as a fait accomplis to the contractor. I think I got $5. That led to repeat business with the same client, improved feedback on the site, and more business from others.

After getting high feedback from a load of very low paid jobs over about 6 months, I got my first longer-term contract at $4.50 per hour on a Joomla site. After 6 weeks, that finished, and I fell straight in with a mobile-app developer who wanted lots of work doing, I doubled my salary, and I stayed with them for a year. After that, I got in with a realty website for a few months and more money, and since then I've been working for a client offering a webservice based around Kindle books. That's been 2 years now, and I'm on my original target rate of $25 per hour. I would point out that I'm an ex-pat living in a developing country, so I can live very well on what I earn.

The main thing for me has been being able to provide a quality service. I've sub-contracted out some work to other freelancers (with the clients' knowledge) and, generally, the work has been poor and the attitudes have been appalling. Getting repeat business and good feedback is the only reason I was able to succeed (by my own benchmark) with this, and I only got that through being professional and responsible. Even when I was earning a few dollars for a day's work. In the end, this led to long-term "guaranteed" work with clients that I enjoy working with. My current client even stalked me to get me to work with them because they liked my feedback and previous work so much.

Early on I was advised to learn a CMS or two, and Drupal and Joomla were recommended. I would give similar advice, but would recommend Wordpress. Not that it's a CMS as such, and not that it's particularly pleasant to code around, but because it is very popular. If you have a niche you can go for, great. If not, you will either be competing against a wide variety of low-charging code-monkeys, or you will be honing your skills at something that may (potentially) be more rewarding to code in, and that is marketable. Possibly Yii. But making squat in the meantime. Actually, SugarCMS may be a possibility as a niche market, but I admit I despised writing code for it.

Good luck, if you decide to go for it.

Get out of CS and take a IT tech / trade school li (1)

Joe_Dragon (2206452) | about a year and a half ago | (#41279661)

Get out of CS and take a IT tech / trade school like path. Community College due offer classes as well in IT.

Re:Get out of CS and take a IT tech / trade school (1)

CRCulver (715279) | about a year and a half ago | (#41280041)

The submitter is in Europe (presumably the EU). "Community colleges" are not really a phenomenon here, as university tuition is so low (or, in some countries, education is free) that one can easily complete one's studies at a respected institution, which also offers the possibility of employment in academia while one is trying to find opportunities in the marketplace.

Re:Get out of CS and take a IT tech / trade school (1)

couchslug (175151) | about a year and a half ago | (#41280307)

You can do both and learn CNC machining, then CNC programming and eventually how to troubleshoot and repair CNC equipment.

That gear MUST run or the owner loses big money. Trying to do what "everybody else" does is silly. Find jobs where there are very few competitiors and which cannot be outsourced away from the working system.

Get ready... (0)

Anonymous Coward | about a year and a half ago | (#41279737)

In today's world, get ready to be sued big time when the slightest thing go wrong with your programs. I have has scores of ideas for programs and websites and other non-IT inventions in the past. I always decided to abandon the ideas because I ALWAYS would see something in the programs/inventions that could definitely happen whereby someone could sue me. Try to get on with a company and work a while and be sure that any company you should start on your own in the future can afford and has product insurance.

Find out the laws and taxes (0)

Anonymous Coward | about a year and a half ago | (#41279915)

You're talking about setting up a business. Business (in any country) has rules. Rules that are sometimes radically different from what you've experienced as a "person". Rules that make no logical sense, but exist none-the-less. Know what the rules are and follow them (or get someone else to help: attorney, accountant, etc... that's their profession) or inevitably, you'll get burned in some unexpected way.

Taxes. Gotta pay them, as a business. Maybe it's only a US$20/year (or equivalent) business license for your town/city, but you're in business, you pay it. Ditto for all the other countless fees/permits/etc. In general, the *cost* of all this in monetary terms is small, but it will consume a significant amount of time.

Budget for administrative time. Particularly as a new business, you'll spend on the order of 20% of your time dealing with stuff that is NOT directly related to producing the software product. Book-keeping, form filing, invoicing, etc.

Budget for sales/marketing time and money. Many free-lancers learn this the hard way: you burn all your hours day and night getting the product out the door, and when it's delivered, there's no new work coming behind. You need to be marketing continuously. While working on jobs A,B,and C, you need to be lining up jobs D, E, F, and G.

Do not become dependent on a single client. No matter how lucrative and friendly, some day, they'll get it into their head that they need a change, and then you're screwed. It won't be because you did something wrong, or any rational reason. Having multiple parallel clients also keeps you out of trouble with the "de facto employee" or "co-employment" problem; it makes it better for your client if you have multiple clients; they're less likely to get into trouble for not doing things like withholding taxes (if they have that where you are) or paying for legally mandated employee benefits, etc.

I started by helping non-techies in web forums (1)

raymorris (2726007) | about a year and a half ago | (#41280343)

I spent my first fifteen years doing freelance which grew into my own company with three employees. I started by finding a couple of web forums, communities, where people sometimes asked technical questions. In my case, forums for people running their own web sites (1-3 person companies). If I could answer a question, I would. If I didn't know the answer but could look it up, I looked it up. Soon I had a reputation as the most knowledgeable technical person in that community and people wanted to hire me for projects. Eventually I ended up participating in mailing lists like IETF (Internet Engineering Task Force, the internet standards body), Apache-devel, etc. An interview is a lot easier when the hiring manager Google's your name and finds ypu on the Linux kernel list, apache-devel, and linux-lvm-devel. One interviewer asked if I had any experience with Debian. I asked if they'd seen the previous day's Debian security update, which warned of a serious flaw, crediting me for discovering it. That's gold and it's just from participating in the community. Btw, if you read this post and think I sound credible, that's exactly what I'm taking about. Just do the same in a forum where you can be helpful.

You will fail. (0)

Anonymous Coward | about a year and a half ago | (#41280405)

I've been studying UNIX for 20 years. I now run multi-million dollar machines from IBM (the biggest, baddest you can buy). And I'm on the god damn payroll.

And her you come, fresh out of school, thinking you can freelance.

You should be thinking about getting me some coffee the way I like it, and I might be willing to show you why everything you learned in school was a waste of your time.

Kids these days!

Re:You will fail. (1)

Dr. Smoove (1099425) | about a year and a half ago | (#41281233)

probably the best response in the whole thread. OP displays some naivete if he thinks he can just go into freelancing out of HS, ffs i'm in the same position as you pretty much just at 15 instead of 20... fuckin took me at least ten before i could find my ass with both hands. Even then I would say until I reached about 8 of professional experience (meaning getting paid) could I freelance... but freelancing sucks so fuck that.

Get local advice. (1)

thesandtiger (819476) | about a year and a half ago | (#41281379)

The zeroth thing you should do is make damn sure your skills are sufficient to provide the kind of service you want to provide, and that you know what you can provide.

First thing you should do is look to local chambers of commerce in your country. They will give you plenty of advice and help on the business side of things that is relevant to your region.

Second thing you should do is go to a ton of local meetups for professionals in the area you want to freelance in so that you have some ideas as to what other people are doing. You also may make some contacts there who would be willing to take you under their wing and give you a trial working on some stuff that they have, to see if you're any good.

Load More Comments
Slashdot Account

Need an Account?

Forgot your password?

Don't worry, we never post anything without your permission.

Submission Text Formatting Tips

We support a small subset of HTML, namely these tags:

  • b
  • i
  • p
  • br
  • a
  • ol
  • ul
  • li
  • dl
  • dt
  • dd
  • em
  • strong
  • tt
  • blockquote
  • div
  • quote
  • ecode

"ecode" can be used for code snippets, for example:

<ecode>    while(1) { do_something(); } </ecode>
Sign up for Slashdot Newsletters
Create a Slashdot Account

Loading...