Web Development - A Tough Job to Have?
frank_tudor asks: "Hey everyone, I have been a web developer for seven years now. I have had some moments of success, but mostly down moments with low pay, less than stable work, and unemployment. I love what I do and I don't mind the trends and technology changes that come with web development, but I am getting older and have been mulling a change in professions. But to what? I an wondering what those of you on Slashdot think about web development as a job, and what professions they think would be both stable and challenging to consider?"
- The technology & framework you're using will be obsolete in two months (see above list).
- Your scope creep is worse than another project because web technologies (like Web 2.0) are constantly offering new features. The customer sees them and wants them
... now.
- A lot of times, you can add something graphical in two minutes and the customer might wet themselves when they see it. On the other hand, you can spend two months knocking out major requirements in back-end functionality and the customer will probably ask you why they're paying you since nothing's changed in the interface.
- You need GUI experience and a sort of artistic knack (or at least a team member with this expertise).
- You need a solid programming background for functionality (or at least a team member with this expertise).
- You need to know a lot about security (or at least a team member with this expertise).
- You need to know a lot about databases (or at least a team member with this expertise).
- If you rely on team members for the above, you need to keep constant communication with them through every step of the development process--this is why it's often better for you to just learn everything.
- You have to develop original content for the website. Seriously, where do people get their pictures for websites? I want licensed images of people standing around and using computers in my website
... I had better get my digital camera and waver forms and hit the office cubicles.
- A lot of the tools are FOSS. My company's FOSS Process has 20-25 control gates. Most of them are lawyers.
- You sometimes have to deal with lawyers.
- It's a tiered or layered framework that you work with & therefore to introduce a new functionality, it has to be implemented from front to back. This means that it's fairly difficult to have people in charge of a layer (like presentation-side versus functional server-side versus database) because they all have to play ball in order to get the functionality working.
- You have to balance server load with what can safely be done on the client side.
Now, I know a lot of the above elements are present in other programming/IT jobs but I do find web development to be the most difficult form of programming.The pros of web development:
- A lot of jobs are available.
- The pay is decent.
It doesn't sound very fun & yet I still continue to do it. If you want a suggestion, only take web development jobs on a large team that already experiences success. Learn how to fit in and then you can work on taking on challenging tasks. As you can see from above, I'm expected to do it all and then some. I've been forced to do things as a one man team and I don't like it. Don't enter into anything unless your duties are well defined and involve well built products, tools & technologies.Most importantly, educate yourself about enhancements, advancements & changes and stay well rounded. Best thing I ever did was set up an Apache Tomcat server at my home and start tinkering around. Well, I suppose that's another story though
My work here is dung.
Over ten years ago, I started working for a healthcare organization. Initially the pay was low and the jobs were somewhat stressful. Still, it's now become pretty much the dream job. Since we're non-profit, we can actually do things because it's the good and moral thing to do, rather than lining our pockets with money. Since it's healthcare, there's a fair amount of money to be had, purchasing interesting systems and getting to play with cutting edge technology. The atmosphere is great and I get along well with my coworkers.
Bottom line, it's a stable, well-paid, and interesting place to work.
Ever changing end user demands, request for new and/or unproven technology eg "Oh, this thing called Ruby just came out yesterday, I'd like to have a site in that.. Or this new ajax thing"- now these things are old, but when they were just fresh out in the wild, customers wanted it because it was the 'new way'. I hate huge projects where the user changes their mind on something major halfway through and that requires a rewrite of nearly everything you've done, or you find yourself shoehorning things in even when you tried to anticipate features they haven't asked for but will think of or would be nice.. I always found myself giving them way more than they wanted and always ending up with them wanting more. Drives me batty, plus I'm a contractor, so I have to deal with a middle-man who deals with the customer- never play telephone with web-design, it makes it even harder and you get stuck needing input on something and it takes 3 days to get an answer. Ack!
I don't have a solution for you, I'm now working in an electronic engineering company doing the software side of things and am in way over my head as far as the electronics is concerned, but I'm learning and am paid well- its a great job that's not on contract. Don't do contracts unless you've got lots of customers and other people to help you, otherwise you just get all the headache managing things- there are in fact advantages to working for someone else, as much as I like being on my own.
Definitely not stable - I agree with all the other opinions posted. You constantly have to be on your toes, both from a front-end perspective (understanding HTML/XHTML, JavaScript, CSS, etc...) as well as from the programming perspective (different options like ASP.NET w/C# or any other myriad languages, Java/JSP, PHP, Perl, Ruby, etc...) And as if it didn't get worse, the languages themselves seem to change as frequently as the which ones are in vogue (take PHP, for example.) And then, at a higher level than even the web development languages, you have the various frameworks that they utilize (Struts, Ruby on Rails, and others).
But it can be interesting - if you want interesting more than you want stable, I'd suggest trying to find a startup. Or better yet, work on your own projects in your spare time, and try and spin them off into things that you can do full-time, working for yourself. This is ultimately what I want to do, but it ain't easy. Plus, you need to find an employer who is amenable to this and won't try to claim your off-duty work as their own.
concrete5: a cms made for marketing, but strong enough for geeks.
It sucks, and that is why I am reading Slashdot.
FP?
One (I guess it could be considered two) word: Myspace. There are millions of 14-16 year old girls who would give you a weeks worth of allowance to make their page pretty -- best part is, their definition of pretty is usually "cluttered, pink, and gag-inducing". You could make about $5 per site doing that, and assuming it only took you 10 minutes to code their site, you could make approximately $30 an hour working from home...
Seriously though, I feel for you -- all tech jobs have been knocked down a couple notches since the web bubble burst. If you like web development, I'd say try either getting several small business clients (especially if you know macromedia, small businesses eat-up flash sites: "ohhh, so pretty") or if you want to get out of the field all together, ask some of your larger former clients if they're looking for any tech-work. As far as what you want to do -- no one can tell you what you'll enjoy except yourself. I've seen people go from Helpdesk to Development and hate it, I've also seen them go from Helpdesk to Development and love it (even though they loved Helpdesk too). Beauty (of the job) is in the eye of the beholder.
A computer once beat me at chess, but it was no match for me at kick boxing.
I've been doing web development for a few years now for a consulting company. Initially we just started with our own internal web applications for managing projects, time, expenses, all of that. Eventually we started developing web apps for other clients intranets until it got to the point where I couldn't manage it all myself. We hired two other developers and I took on more of a management role, along with continuing to develop and work on existing applications.
Not everyone wants to be involved with management, but if you enjoy web app work, perhaps you'd enjoy trying managing others and using your experience to help them.
I will shred my adversaries. Pull their eyes out just enough to turn them towards their mewing, mutilated faces. Illyria
Interesting - you suggest working for someone, i would suggest consulting as a project lead. There are lots of small(er/ish) companies out there that want stuff developed, but don't have the exprtise to deal with a development contractor.
What these companies want is someone who knows the subject domain, knows the industry, and can be the company's representative when dealing with developers.
Bad developers give bad adivce to clients who don't know good and bad. Someone who can say "I've done dev for a decade. I know the tech, I know accessibility, I know IA, I know UI, and I know about business needs." can contract as the small un-savvy company's goto person to developers.
Since offshoring is becoming all the rage (though there is some backlash) if you are articulate and can write well, use your development experience as leverage to become an analyst. In fact, there are alot of places an analyst could be used. If you need to develop these skills more, take a couple of classes.
One of the posts mentioned health care as a interesting industry. I will reccomend the energy industry as it is huge, heavily subsidized (the gov't will not allow them to fail), making huge sums of money and some of the problem domains (earth scienes, environmental compliance) are a bit more intersting than your typical ecommerce site.
Best of luck on the change...
putting the 'B' in LGBTQ+
If you have been struggling to make money at it, despite having experience, you will be vulnerable if the economy starts to really struggle. Do it on the side, and find a job that is more or less to your liking, but that is more stable and lucrative. The last thing you want is to make it to 40 and have only a few times more money saved up for retirement than a typical mid 20s code monkey. Given the ageism present in IT, you will be foolish to not make your money while you're young. This coming from a guy who's not quite 23 :)
I am a professional freelance webdeveloper at the end of cash resevers with no new deals in sight. It isn't nice, especially with a family and bills to pay. However I know what you're talking of but don't think the technology diversity is a downside. Most people do various technologies for the fun of it. I've done a bazillion different ones in the last 3 years and now I will take the chance and start to focus.
... whatever you fancy. Stick to it and specialize and do ALL your stuff from here on down with only that technology. See to it that you join the core team of that project and you've no reason to switch solutions ever again.
If you don't like switching the technology every odd month - then don't. It's that simple. There are countless OSS solutions out there, one better than the next. Pick one server side and one client side and stick to that. Zope/XUL, Typo3/Flash Java/Java, OpenLaszlo, Joomla/Ajax, Symfony/XHTML
I know a webdesigner who does EVERYTHING with ExpressionEngine (a commercial PHP/MySQL Weblog/CMS that's popular amoung designers). It uses some hairbrained Template Level PL for small logic actions. Some more webappy things he does are a total mess and totally destroy the concept of MVC but all the websites he puts out are top notch and easy to operate for his customers. He knows his way around that CMS and customers don't question him.
After years of exploring all the neat and fun OSS webtechnologies and after 3 years freelancing in the field I'm slowly growing old and will bite the bullet and start to focus. Allready I've done a few jobs with Joomla. Since I'm building a larger PHP webapp just now I'll probably chose a PHP CMS to dive into. And since I'm in germany it probably will be Typo3 - allthough I hate the beast.
Bottom line: Specialize and focus. That will bring you further than eternally trying to be the jack of all trades.
We suffer more in our imagination than in reality. - Seneca
Get over it.
~ I am logged on, therefore I am.
I've been designing web and database apps for a very long time, and i've made a lot of companies much more productive. However, none of it fulfills why I love to program. They are just an endless series of requests, and every time you finish one, 3 more related requests spring up.
I'm going to start a part-time position in sales. You don't have to take your work home, the pay can be up to twice as good, and the skills universally apply to any sales job, interviews, or maybe in starting my own company by mixing sales and programming. I'd still write programs, but they would only be for my pursuit of knowledge and profit.
No more pulling all nighters only to let some executive receive the credit and bonus. Those days are numbered.
> I an wondering what those of you on Slashdot think about web development as a job, > and what professions they think would be both stable and challenging to consider?" Rock star. (gotta have dreams right?)
Visit http://ringbreak.dnd.utwente.nl/~mrjb/growingbettersoftware to download your free copy of the book
I've been developing for over a dozen years, from PC database in the Clipper days, to Unix C/C++, now to J2EE and web. Rather than focus on technology I focused on understanding what it takes to be successful in software. The most skilled, sophisticated coder isn't going to be successful if they're solving the wrong problem, or part of hte problem, or someone else's problem. Or if their solution isn't appropriate. The organization isn't going to remain successful after launch if the design or the technology isn't somethign that can be maintained by the staff that's going to follow up the initial development, or if non-functional requirements regarding the need for change are ignored. Focusing on understanding that part of the software problem has me moving into a Director of Technology position at age 35. I went into a firm applying for a project lead position and when I was done with the interview the VP told me to go home and figure out what it would take to be their director. It sure wasn't because I know Struts/Hibernate/Spring/"buzzword of the day". The industry as a whole needs more people who can think above the keyboard and know how their organization works and what it needs to survive. If you were on a failing software project recently, was it because you and the end-developers couldn't write code? If you're in a mess of a software house, is it because the team couldn't make Spring or Hibernate or Struts or whatever work? Not very likely. If you want a long term career, solve the real problems of IT and the business that relies on IT.
- Sig this!
Back in the day when I had an employer who respected what I did, came into the web world with an open mind and interested in success, and didn't second guess everything I did it was great.
There are two phrases any client should never use:
1) "Make it look exactly like this."
2) "My friend has an 8 year old kid he says built him a web site."
A bad client can be a real problem. It takes a lot of work to find a good one.
Skot Nelson music is my saviour / i was maimed by rock and roll
I started out doing 3d graphics and slowly I ended up in web dev and I love doing it. But I am the kind of person that like to learn new languages and frameworks on the weekend. I just happen to really like doing it, it pays well and there are plenty of jobs. Not only that, but the competion isn't ultra-fierce like it is in 3d, which I like. 3d graphics is a glamorous but underpaid overworked hell that will never get you anywhere. Web dev is a huge industry that continues to grow. It pays well and has room for growth. No, you mostly likely will never be a millionare, but its a job that can always challenge you and pay you a real middle class salary.
One catch, however. The jobs aren't everywhere. The majority of the work seems to be concentrated in texas, Silicon Valley, LA and greater NYC.
Sig removed because it was obnoxious
Does that sound odd to anyone else, or am I just disconnected from some greater reality?
Frank, I've been doing Web stuff since 1994. I started with very little know-how -- I went to college to study English, not programming. Over the years I spent time as an artistic Web Designer & Photoshop monkey, then usability expert, then a JavaScript & Perl CGI developer, then PHP, MySQL, and eventually I just decided to say yes to everything. I'll try anything. And what is important to note is that my salary has steadily gone upward -- huge leaps upward during the boom, and then it was flat for a while, and then I started working for myself, and gave myself a pay raise. ;)
I have more work than I can accept. In fact, I've probably disappointed a few business people lately because not only was I too overloaded to take their work, but my subcontractor was too. How does this sync up with "low pay and unemployment" problems?
I have to wonder. What is your skill set? In seven years, you could and should have learned quite a lot. You should be much more competent, and thus much more in demand, than any young bloods coming onto the scene. Your skills should be apparent to those working with you -- "oh, he's the guy who does _____." For me, it's "he's the guy who fixes the Web site when our employees break it." There should be certain things you have zero doubts about as far as your skills are concerned. For me, it's PHP and MySQL, with all the ancillary buzzwords as a given (XHTML, CSS, Ajax). Can you easily and readily point to your strengths, and can your peers?
Lastly, what are you doing to market yourself? You don't provide links to your sites or portfolio in your story submission. With your mention of low pay & unemployment, I wonder about your networking too. Have you mass-mailed every friend & relative in your address book, asking for work? Have you kept relationships with the people who have hired you in the past?
I ask because it seems odd that after 7 years, this is the story you have to tell. And that makes me worry about the next thing you jump into. How many of the issues you have right now are due to the job itself, and how many are due to your own networking/skillset/learning/marketing deficiencies? If you find that a lot of it is of your own making, then changing jobs is NOT going to help. It will just be a year of euphoria followed by several more years of being brought back down to harsh reality. Think hard before you jump to the next thing. I'm worried it may be more of the same, unless you do some hard self-analysis first.
My Greasemonkey scripts for Digg &
Specializing will ALWAYS mean that you're at the mercy of the next technology and those who are introduced to it as youngsters. When some youngster who works for entry level or just above can compete with you when you've got ten years experience -- and ten years of salary expectations -- you're gonna be out on your ear with an old man's bills and an old man's willingness to change.
Learn the fundamentals of software and business use of it. Learn what it takes to make and keep an organization successful. Learn how to identify what the real problem is, how to craft a real solution, and how to implement it so that the next generation on the software will be able to maintain it. Better yet, how to tell someone how to implement it that way. Problem solving skills and insight are going to stick with you far longer than the technology of today (or yesterday on some things already).
- Sig this!
I wish I could. I'm going blind. The alternative is to give up Slashdot.
If you're working on an interesting and engaging website/product then web development can be very rewarding. You don't have to worry about people running old versions of your software, you can update as frequently as you please, and distribution on the web can potentially be much larger and faster than traditional applications.
:)
Having said that, I prefer to work on back-end/behind the scenes stuff. Working in a team with a wide range of skills is great, if you also work with people who excel at front end/css/gui stuff. It all boils down to the environment you're working in. In the right setting, I say that producing web based products is much more rewarding than traditional software that the user needs to install and upgrade. I should point out that I've never really done the latter tho.. so I could be missing out
Last.fm - join the social music revolution
I hate Asian reductionism.
On one side you have creative -- these guys design the page you're going to have to code.
On the other side you have back end -- these guys are going to connect what you made to the servers.
There is a constant friction between these two sides. Creative wants gradiants! But you have to explain they take up too much bandwidth. Back end wants you to use ASP.net but your client uses PHP. Back-end want a user flow Information Architecture, Creative gives them three photoshop files and two paragraph word document.
It's your job to speak both languages and translate.
Ah office politics.
I perfectly understand what you're going through. Unfortunately, I haven't found a solution myself. I've been making Web sites since around 12 years now, and I must say, I rarely got an enjoyable time.
What makes it the most difficult are the customers, in my opinion. I also worked in call centres for more than four years, and still today, with all that "practice", I still can't deal with customers. Furthermore, the share of customers I got is quite bad. (For example, one customer I got disappeared for months then finally came back, drunk, and shout and me because the work I've done was now "bad" but used to be the best the world just before he left.)
Customers are never happy, never. They may seem to be satisfied, but they always want something more. They never pay on time. They never tell you want they want or give you what you need on time. All that, and the site is often just an intranet site or a public site that closes a year later. That makes it difficult to grow a portfolio!
I'm currently, since last year, the webmaster of a call centre. Here the "customers" are the team managers and operations managers. They're not sure about my real position within the company and the requests they give me range from doing an extensive new database-driven application for customizable interface to pull out call data statistics for the past years to posting "cute" pictures on our intranet. Most projects I do here get cancelled or unused once done, and they often get superceded by other projects when managers feel like it. My position was supposed to be independant, but they've put another guy to supervise me with who I often need to argue to get things done.
Plus, the full-time job I have now is finally the first one I ever got in my domain. Ironically enough, I don't like it. I think it could be much better. The only other kind of work I've done was technical support on the phone.
To be honest, I think I prefered being a webmaster when it was just a hobby. As a job, I must say, I know I'm good personally, but I somewhat could never succeed. Personal satisfaction always lacks. At least, when it's by myself for myself, I know I'm satisfied with my work and I know I can get things done. But the money won't pour in!
I'd love to do something else, but like you, I have no idea what or how. Good luck!
R.
You can work for a good company that respects your talent and ability.
You can work for a bad company that sees you as a hired monkey and nothing more.
You can get the dream job building useful applications and then when you least expect it, have your job yanked out from under you.
You can soend your life doing scut work, fixing other people's abyssmal code or having to deal with demanding clients who change their minds three times a day.
If you enjoy challenges, there's nothing better than web development, front end or back end, assuming you're in the right place with the right company. If you're unencumbered, consulting is a good way to make money and not ahve to stick around any place long enough to get sick of it, though make sure you sock money away for a rainy day (you'll have them). If you have family or other obligations, try to stick with a permanent job with the most cutting edge company you can find. Make sure they'll help keep your training up-to-date and expose you to the newest and best technologies.
My 2 coppers.
GetOuttaMySpace - The Anti-Social Network
Bailing out now is a really bad idea IMHO. I stuck it out myself and had my lean moments but they payoff is great (if you are getting low wages you are being scammed). It takes a long time to develop the skills that you need to do this job efficiently, you really need to have a global mastery of servers, graphic production, and databases each of which is a discipline in its own right. (You often end up managing the project as well, another handy skill). You have to want to learn new technologies every three months or so, but I think this is what makes the job interesting rather than a drag.
You could be a mortgage broker if you just want to make cash, but if you've been doing this for seven years you're probably too smart to last long in that industry. Its true though, this job ain't for everyone...
i got ball this is my adress 108 20 37 av corona come n do it iam give u the sidekick so I can hit you wit it
Please do.
No not necessarily. It's only sketchy if you're freelance, pitching for projects, getting shafted by clients, etc. Just get a job as the in-house web officer / web editor / web manager etc at a company/governmental organisation/NGO, etc. Then it's stable, salaried, wont-get-fired-unless-you-really-f###-up, paycheck every month, reliable hours, paid holiday, etc. All gravy!
I did web development for many years, I tried to get out but you end up doing different jobs if they get the slightest clue that you have experience doing web development they start to pull you back into that.
For example, I took a job as a system administrator for a large ecommerce company, they had an emergency one day where some perl cgi scripts broke, the developers were flapping around trying to figure it out, I suggested a solution that worked, from that day one I also had web development tasks, when I finished that job my offical title was: IT Manager/Network Manager/Website Manager.
Second time this happen, unix sys admin for DoD couldn't be further from web development right? Wrong, since being in this job I would estimate about 60% of my time is spent doing tasks related to web development, (I don't mind so much here since the development is very much backend stuff for internal application so less pressure), but it all started because a midlevel manager noticed on my resume when doing some reviews that I had experience in that field.
I swear next job I am omiting all references to web development from my resume.
GeekServ Unix Consulting Services (http://www.geekserv.com)
After 2-3 years as a Web Designer and always dealing with intermitent work, I've decided to say "screw it all" and spend the winter in Whistler as a ski bum working whatever random job I can (as long as it pays for my lift ticket). Course I'm 24 and have no strings attached. Best of luck. If you find something better to do, I'd be interested to hear about it.
I agree totally - my partner and I work together developing high end eCommerce solutions - we've written a bespoke system, and we pull in high six figures (in pounds stirling) between the two of us month after month - web (particularly eCommerce) development is booming.
Yes, it's a tough job - you have to be prepared to work seven days a week, be on call at 4am, and work 18 hour days (minimum), and put up with shit from clients who don't have a clue. We have a good team insofar as he is a photoshop and design genius, and has a decent working knowledge of PHP/MySQL, and I do all the guts - the javascript, the AJAX, the PHP, the SQL, the server setup, the scalability...
In all - Web development is a tough job to have, but not for the reasons you give... If the work is short, it might be (Sorry about this) because you're not very good.
One piece of advice - find a focus, and stick to it - there's no point in being the jack of all trades and master of none - by this I don't mean a technological focus - I mean a business focus.
I think my office paid like $95 for a CD of stock images and clip-art. You can find them without a lot of effort.
See my blog http://ilovecookes.blogspot.com/ for light hearted technical information.
I was in this boat a few years ago and saw where the industry was going and prepped myself for the changes.
.NET and Java haven't got a clue as to what they want. Don't bother with these guys (unless they happen to be a hosting company and you do happen to be multilingual).
I specialized in LAMP (Linux, Apache, MySQL and PHP). This skillset will cover the vast majority of jobs on the market. Knowing Photoshop and Flash helps but isn't necessary. You should have OOP running through your veins and understand what MVC is and use it daily. As a web dev, you are also expected to be a sys admin to a certain extent setting up cron jobs, checking security, etc. Also, knowing how to build an e-commerce site, build your own SSH certs and manage public and private keys helps as well.
Basically, you are a sys admin with a specialization in the web.
Focus on this kind of skillset and you will be set.
Also, don't take any job that requires you to know Photoshop, Illustrator, Flash and Visual Basic; these are red flags that tell me the job won't last a month and that the employer doesn't really want a web dev and isn't sure what they are looking for.
Which brings me to another good point. People who ask you to know IIS, Apache, Windows, Linux, Visual Basic, PHP,
This is my sig. There are many like it but this one is mine.
I've done multimedia CD-ROM programming, 3D development, web development, and traditional desktop app development. These are all good jobs, but they're also prone to technology drift and don't necessarily pay very well. I've recently been heavily involved in creating and maintaining databases, which has been relatively easy to pick up compared to the raft of technologies involved in web development. In looking at jobs on Monster a while ago, I found that DB admins are in demand, and very well paid. The pay/difficulty ratio is more attractive than many programming positions. As much as I like programming, if I need to find a new job in the future, I'm skewing towards databases.
Rob say Code Monkey very diligent
- week-29-code-monkey/
but his output stink
his code not functional or elegant
what do Code Monkey think
Code Monkey think maybe manager oughta write goddamn login page himself
Code Monkey not say it out loud
Code Monkey not crazy just proud
http://www.jonathancoulton.com/2006/04/14/thing-a
Some other easily identified cons:
GCHQ Quantum Insert installed. If only our tongues were made of glass, how much more careful we would be when we speak
Years ago my father was hit with a project that he didn't have the budget or time to perform. He had to reduce inventory problems and link 4 wharehouses in 3 Canadian provinces together so the suppliers knew what was going on.
It would take months and years to hire a few VB programmers to write a sql program. I showed him some internet sites and explained how interactive cgi scrips with sql support were the new thing (this was in 97).
He then realized in 2 weeks he could have programmers develop a VB based IIS app and the suppliers and merchandizing staff could just use IE to see whats on hand and move items around.
Anyway its now popular for many businesses to hire former web developers for SAP and other intranet applications to solve business problems. Also if you know java and c# you could write desktop apps too since you obviously have enough experience to do and learn.
Also those closer ot the business process side are less likely to be outsourced to India. Any Indian or mouseclick jockey can create an app with Frontpage in under an hour. However you will be valued for saving your company money and be part of the business team if you shift focus to their needs and write more critical apps.
Dont let yourself be undervalued and learn business too if you feel weak in this area.
http://saveie6.com/
I do contract-based designs through my primary job, and through my secondary business I run (I tailor to different clients in each). With my secondary business, I decided that I was going to treat my work more like commissioned art, rather than a web design business. Why? I get too many clients with some idea in their head, that doesn't even communicate what they need effectively. They just think it looks cool. I'm not a tool to be used for their butt-ugly work - I'm the one with the experience in translating ideas, motives, and personalities into visual art - they should just back the F### off. I'm tired of doing websites that look like they were designed by pre-schoolers - "What the customer wants, the customer gets" is a piss poor motto for anybody who wants to be a web artist.
Don't even get me started on functionality - If I get one more little mom & pop shop who wants a full blown e-commerce setup for their 5 or 6 orders a week (which are usually from locals), I swear, I'll crack.
"Better to be vulgar than non-existent" -Bev Henson
It has NOTHING to do with your skillset. 99.999% of clients have no way to judge wether you possess even basic competence, much less a way to tell if you excel at what you do. Its about people, not skills. Bob has no way to tell if you are awesome or you suck, but if he knows Joe, and Joe says you did good work for him, then you're in. Its all about making people happy.
This is why some incredibly incompetant people can have more work than they can handle, while some people who are amazing at what they do can't find work at all. Its not about the quality of your work, its about the impression your clients got from you. If you made a shitty, exploit riddled pile of crap for them, but were always giving them status updates, working with them to make everything look and feel the way they want, and met your deadlines, then they will love you and recommend you to all their friends. They have no way to know that your work was garbage, just that it looks the way they want.
It's tough these days to be a web development generalist. I can think fo two strategies that might help.
1. Specialize - find some field, hopefully one you like, and become a specialist in it. Something like XML web services for travel applications, or web application security, or whatever (the more technical, the better, I think). Just find something and become the goto guy/gal in that field.
2. Startup - stop coding for other people and work on your own startup. This is a hard path to follow and the odds of success aren't great, but you may be happier.
I'm of the opinion that if you don't enjoy your work you should find something else to do. Life's too short to stay in a job you hate. Maybe web development isn't for you. Find something you like to do and head in that direction.
My average job length is about a year because I get bored quickly. For developers changing jobs is often the easiest way to get a pay raise.
If you do enjoy web development there are plenty of good jobs out there. Be picky! Find one that you will enjoy doing for a while. The environment makes all the difference. Meet the people you'll be working with. If you don't get along with them you're all better off if you find something else. You may have to find temporary work while you're looking for a good job but in the end you'll be much happier if you take the time.
My current employer found me on Dice.com. After posting my resume I was getting several calls a day. Many of the calls were only good for laughs but at least they gave me options.
Well, if you are tired of what you are doing or never really liked it in the first place perhaps it is time to try something else. Otherwise, see where your interests are and market/business trends. It is usually a combination of what the industry is calling for and what is a cool technology to learn. Sometimes they don't go together well. I've done everything from Java, Lotus Script, C, C++, C#, VB, ASP, various .NET web applications and rich client development. At the end of the day I'm more of a generalist, but I can be flexible enough to morph into whatever is needed at the moment. There were days in the past that I hated Lotus Script but enjoyed manipulating the Lotus Notes APIs via C++. I did a large amount of Jave development but it was almost always middle-tier or back-end. These days I'm doing more UI work because in spite of my professed dislike of that type of development I picked up a knack for understanding what my users needed and find I don't have the same extreme irritation with it any more. If you can manage to merge what you enjoy doing with what is good for your career you will be in great shape.
--Cally
who doesnt want to learn any new tricks. If that's the case, then i think that career change is in order. .net technologies, and have now moved into PHP/MySQL development. All in just under 3 years. the first 6 months were a jump start for me to realize that i LOVED a career that i never thought i'd enjoy. i thrive on the constant changing technologies. something new to learn every day. If my brain went stagnant for even a few weeks, id be back where i was with IT consulting and need to find something new. Bottom line...if you cant stay bleeding edge to a)keep your clients happy and b) stay ahead of your competition, you're gonna hurt in this industry.
I came to the web development industry 3 years ago from nearly 10 years as an IT/Network consultant. I was bored out of my mind in that gig, and seeing as how i was only 22 years old (yes, thats right...i was fixing computers IN A SHOP, not out of my basement, when i was 13) something needed to happen fast. College @ Drexel University gave me a great opportunity: Co-Op. Drexel's co-op program lets a student take a 6 month trial run at a career, no strings attached. a good student will make the best of those 6 months and actually try the career, not just settle for coffe-bitch. I had a buddy who worked at a local interactive agency as a developer and had him help me get my foot in the door. i knew HTML, and enough CSS to get by. Within 14 days of hire i was developing css based, xhtml compliant layouts (not hard, i just edge the learning curve as much as i can). As soon as i'd mastered that, i moved onto javascript. once i was an office DOM guru, i took up some
It's the best kept secret in web application development. The WebObjects frameworks, written in 100% Java, provide myriad front-end presentation objects, and keep your view and controller logic separated nicely. For your model, WebObjects features a back-end called EOF (Enterprise Objects Framework) which provides direct object-based access to the database. It eliminates writing SQL code, even when complex relationships are involved. It's all handled for you.
.Mac web suite, Walt Disney World reservations.
Lots of large-scale apps are deployed on it, including Apple's
If you're looking to enjoy writing web apps, check it out; it's free. One catch: you can deploy WebObjects applications on virtually any platform, but the development tools are on Mac OS X.
I want to chime in here that everyone saying 'start your own web design business dood!' is not even coming close to hitting the nail on the head about bitchy clients and paycheck-less weeks. I did it for over a year, and it worked for me until I got my first feature creep contract bid out too low and it tanked my business. Not eating for weeks because you are waiting for a client to pay for work already done is a bad situation to be in. I ended up with a lucky break getting into wireless network engineering, and landed a sweet job for a start-up wisp/equipment sales company. There is just as much (more!) money in hardware engineering and equipment sales consulting (buy this, it will do this) and takes less overall effort. Hardware changes much less frequently than the software that runs on it. More has changed about web design in the last six months than tcp/ip and unix basics have changed in a decade!
My roles to date were always in the analyst/programmer camp with a little web design. I've noticed the salaries dwindling over the years and then at contract I got 2 years ago, I had the opportunity to be the code monkey for the Business Analysis team, basically my job was to reorganise and index their massive quantity of requirements specs in word format after that was completed, I was kept on to produce an end-to-end requirements management solution for analysts including modelling, textual descriptions, classic specs and verification and validation of requriements. The solution was built out of a bundle of 3rd party tools (RSM, Casewise, DOORS, Word, Test Director, Gorilla Logic) and my job was to script them all up so that the analysts could have an end-to-end workflow. Interesting contract that lasted 2 years and was a lot of fun. Something happened to me though, I realised that being out of the business programming business and going into the analysis tools business. Had to spend a lot of time thinking about the process of business analysis and then training the analysts to use the new tools made me realise that business analysis was the only place to actually make significant changes to an organisation's IT. My new role is as a Technical Business Analyst working on the interfaces between a billing system and all of the other components within a pretty major corporation. Definately a career shift from programming/web design into business analysis. One that I didn't take lightly, but one that was effectively forced upon me because the salaries available for Business Analysts are about 30% higher than for programming contracts. as an aside, I've started development of my own Requirements Definition tool since I now have free mental space from a programming point of view, might as well put everything I learned to good use.
I know an individual who started a web development business from his home just about a year ago. He has done fairly well (small business market). I asked him how he built his business up so quickly. He said in the small business market the customers are concerned about getting results quickly and on budget. By quickly, he means under 3-4 weeks for full site development. I will admit, sometimes the code produced by the tools can sometimes be clunky, it functions perfectly. I had a chance to look at some of the development tools he uses. NetObjects Fusion, Adobe Photoshop, and a slew of predeveloped frameworks like osCommerce. I think that he may have actually found the key to having a good business by focusing on a smaller market, select frameworks, and by heavily using open source projects. He doesn't seem to have any problems attracting clients. He runs his shop from http://www.eriksdesigns.com/
As a web application developer, I have to say that both the parent's experience (albeit with different tech) and the OP's experience ring true, but I love it.
As fundamentally a person who likes to create things, I love web development because there is no other domain where I can spend as little time to make something complex actually work and be available to many people. The first is the domain of all software and the second is specific to web development. (Obviously software projects can be huge and complex, but a physical invention of similar complexity would be much MORE work, often by more people, to get accomplished) The only potential challenge to this crown is being a popular blogger or flashmob organizer and actually getting zillions of actual people to do what you ask. And that usually pays worse.
Fundamentally web programmer pay is pretty good, I think. But it's highly variable, so you need to work on the system to make sure you get paid appropriately. I think many tech people think they'll get hired on their merits, when what matters are personal contacts/reputation and, at best, the appearance of merit (portfolio/resume) These are different skillsets, but they are important to getting paid enough.
If you take a regular job and it doesn't pay enough, you need to look for another one. Or you need to get more skills at getting hired so you can.
I am self employed and love that part too - but you have to be good at making clients want to hire you and pay you - the hiring process over and over again - and you have to throw a wide enough net. Being self employed at anything involves building up a clientele, and that's a lot of work. I certainly went through a period of intermittently not enough employment. Realize that your volume and price are intertwined. Essentially there's a minimarket for your skills, so your volume will drop as your price rises. I generally think this means you should start with a fairly low price, get as much work as you can to build reputation, and as you get too much work raise your price and realize that some clients will no longer be able to afford you. Reliable repeat clients are often worth having even if you have to charge them less, because there's no overhead.
If you're good at what you do and still interested in freelancing, feel free to email me with what you know and make sure to put "Slashdot resume" in the subject.
You have to be good, and I still do not guarantee to pay well; there's a wide open market of developers out there. But we'll do the work of finding clients, selling clients and having a client-base, we'll add to your volume at the low end, and you'll still be free to take on other clients at the high end simultaneously and you can build up your own clientbase.
Looking for freelance Actionscript (Flash/Flex) or ColdFusion work and/or freelance developers. Email me, put Slashdot
Hate to taunt a girl on /., but
If you're going to publicly pick on someone's phrases you should really offer the correct examples, too. Especially since you don't know if English is the poster's first language. You can guarantee that it is not the first language of some of the readers and that some readers are trying to improve their skills.
"run the gamut" - 'to cover a whole range of variations'
"run the gauntlet" (probably not what the poster meant) - 'to suffer severe criticism or tribulation' with background in this criticism coming from many sources. This usage would actually be funny if the poster meant that they were punished by a wide variety of technologies.
"for all intents and purposes"
"fringe benefits"
And no, I didn't spellcheck this.
Looking for freelance Actionscript (Flash/Flex) or ColdFusion work and/or freelance developers. Email me, put Slashdot
...it'll make web development seem like heaven when you're finally forced to return to something like it.
Got time? Spend some of it coding or testing
I have been doing it for 12 years and am evolving slowely to doing more application hosting. I am also specialising in a certain kind of web content and creating more of my own content. And I will be building more boats soon too.
realkiwi
Since we're non-profit, we can actually do things because it's the good and moral thing to do, rather than lining our pockets with money.
You're lucky to have good leadership. I once quit a very similar job (non-profit healthcare) because the management decided to buy a cheap application server that lacked a two-phase commit function, when we'd be reading and writing into multiple databases, ordering labs, drugs, etc. The rationale was it was cheaper to settle the lawsuits over drug mix-ups than to do the infrastructure correctly. Or it came out of somebody else's budget, or something.
Thank the people who let you do the good and moral things for being those kind of people the next time you have the chance. They haven't realized you can't do the right thing "because of politics and internal power struggles" yet, and hopefully never will.
My God, it's Full of Source!
OUTSIDE_IP=$(dig +short my.ip @outsideip.net)
-Always get a deposit -Never sign a contract. Send invoices for each deliverable, and did I mention get a big deposit. I'd rather deal with getting stiffed for payment then to have to suffer through another contract negotiation. BTW: IANAL :)
-Dump bad clients fast! If you consistently get the feeling that they are wasting your time they probably are.
-Develop a portfolio of your own money making sites (advertising, subscriptions, sales or whatever) even a small amount of money will help during slow times. It may also help you understand the needs of your clients better as you try to market your site and deal with your customers.
-Be insanely ethical at all times. Clients don't understand many of the options you present them with. When your explaining something to them their eyes will glaze over. When those eyes suddenly clear, its because they are looking at you and deciding if they trust you enough to accept your recommended option. If you don't have the trust of your client you probably shouldn't be working for them. Of course having ethics is its own reward anyway :)
-Be insanely customer service oriented. Be as involved in their success as much or more then your own.
As for "development" teams I fortunately don't have to work on many anymore. The idea of having to go back and work on a team sounds as dreadful as the idea of having to date again. I am a freelancer with IT experience going back to my trash-80 days. My weakest area is style but after all these years even that is finally improving. I tried sub-contracting parts of projects and found that it really sucks for me. I spend too much time correcting work or nagging people and I hate it. I have friends who do very well putting together large teams of sub-contractors, but it just doesn't work for me.
After 7 years of freelancing I have managed to build a small group of regular clients who have a lot of trust in me. This makes all the difference. I don't have to waste all that time explaining things, I just tell them what I think we should do and we almost always do it. They are also willing to wait for me when I am in a busy spell and will even find work for me to do if things are slow. Building relationships like that should be job #1.
I would also advise getting a project manager. One of my clients effectively acts like an agent and project manager. He finds clients, pitches them, and deals with most of the meetings. I do one or two big projects a year with him and it is very satisfying. It took us a few years to get to where we are but now we work together very smoothly and we speed less time explaining things to each other which gives us both more time to be responsive to the client. The projects I do with him end up being some of my best work. (IMHO)
In summary,
-Freelance work rocks!
-Relationships are what matter most so pay attention to them.
-Get an agent if you can