Catch up on stories from the past week (and beyond) at the Slashdot story archive

 



Forgot your password?
typodupeerror
×
Businesses EU IT

Ask Slashdot: How To Begin Work In IT Freelancing? 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.)."
This discussion has been archived. No new comments can be posted.

Ask Slashdot: How To Begin Work In IT Freelancing?

Comments Filter:
  • What helped me... (Score:5, Informative)

    by johnsnails ( 1715452 ) on Sunday September 09, 2012 @05:29AM (#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??
  • by VirexEye ( 572399 ) on Sunday September 09, 2012 @05:56AM (#41278785) Homepage

    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:Don't. (Score:3, Informative)

    by Anonymous Coward on Sunday September 09, 2012 @05:58AM (#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.

  • Rules of Freelancing (Score:5, Informative)

    by Shinobi ( 19308 ) on Sunday September 09, 2012 @06:38AM (#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

  • by petes_PoV ( 912422 ) on Sunday September 09, 2012 @07:52AM (#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.

  • Portfolio and CV (Score:5, Informative)

    by James McGuigan ( 852772 ) on Sunday September 09, 2012 @08:13AM (#41279047) Homepage

    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,

  • by petes_PoV ( 912422 ) on Sunday September 09, 2012 @09:04AM (#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.

  • by Shinobi ( 19308 ) on Sunday September 09, 2012 @09:57AM (#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.

  • Re:What helped me... (Score:4, Informative)

    by fermion ( 181285 ) on Sunday September 09, 2012 @01:30PM (#41281019) Homepage Journal
    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.

So you think that money is the root of all evil. Have you ever asked what is the root of money? -- Ayn Rand

Working...