Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > C++ > most software jobs are software maintenance rather than new development?

Reply
Thread Tools

most software jobs are software maintenance rather than new development?

 
 
apngss@yahoo.com
Guest
Posts: n/a
 
      10-20-2005
This topic should apply to software jobs regardless of the programming
languages.

I want to know if most of the software jobs in the market are software
maintenance (fix bugs, new feature enhancements on existing code)
rather than new developments (from scratch). This is my first job as a
Java programmer, but I really don't see I do much Java development, all
I do is to fix bugs, and add some new features for new builds. Well, of
course I need to understand the logic of existing code, but my
standpoint is that even I don't know Java well, I still can do the
work.

Is that normal in my case? Or I am just unlucky...

Please advise. thanks!!

 
Reply With Quote
 
 
 
 
John Harrison
Guest
Posts: n/a
 
      10-20-2005
http://www.velocityreviews.com/forums/(E-Mail Removed) wrote:
> This topic should apply to software jobs regardless of the programming
> languages.
>
> I want to know if most of the software jobs in the market are software
> maintenance (fix bugs, new feature enhancements on existing code)
> rather than new developments (from scratch). This is my first job as a
> Java programmer, but I really don't see I do much Java development, all
> I do is to fix bugs, and add some new features for new builds. Well, of
> course I need to understand the logic of existing code, but my
> standpoint is that even I don't know Java well, I still can do the
> work.
>
> Is that normal in my case? Or I am just unlucky...
>
> Please advise. thanks!!
>


No its normal, at least in my experience. New development is much more
interesting of course, but you likely to need a little more experience
before you get given jobs like that.

Not relevant to you (I'm sure) but I heard a funny phrase recently, a
newbie programmer was given a couple of Java classes to develop from
scratch. After a while he delivered these new classes and promptly got
taken off the project because his code had 'logic issues', he's bug
fixing now.

john
 
Reply With Quote
 
 
 
 
Andrew Thompson
Guest
Posts: n/a
 
      10-20-2005
(E-Mail Removed) wrote:

> Is that normal in my case? Or I am just unlucky...


To have work? No.

Perhaps you are undeserving, ungrateful and extremely
self-centered*, but unlucky? No.

* To think your problem is so important that it justifies
cross-posting to such a wide range of groups.

Now GET BACK TO WORK.
 
Reply With Quote
 
Mark McIntyre
Guest
Posts: n/a
 
      10-20-2005
On 20 Oct 2005 00:13:48 -0700, in comp.lang.c , (E-Mail Removed)
wrote:

>I want to know if most of the software jobs in the market are software
>maintenance (fix bugs, new feature enhancements on existing code)
>rather than new developments (from scratch).


Theres a large body of existing code out there. Ergo there must be
lots of jobs maintaining it. Its impossible, given the length of time
that computing has been around, for new work to be larger than old
work.

>This is my first job as a
>Java programmer, but I really don't see I do much Java development,


You're the new boy. Its commonplace for newbies to spend a lot of time
fixing bugs, it lets them cut their teeth, explore their abilities and
so forth.

--
Mark McIntyre
CLC FAQ <http://www.eskimo.com/~scs/C-faq/top.html>
CLC readme: <http://www.ungerhu.com/jxh/clc.welcome.txt>

----== Posted via Newsfeeds.Com - Unlimited-Uncensored-Secure Usenet News==----
http://www.newsfeeds.com The #1 Newsgroup Service in the World! 120,000+ Newsgroups
----= East and West-Coast Server Farms - Total Privacy via Encryption =----
 
Reply With Quote
 
Ross Bamford
Guest
Posts: n/a
 
      10-20-2005
On Thu, 20 Oct 2005 08:13:48 +0100, <(E-Mail Removed)> wrote:

> This topic should apply to software jobs regardless of the programming
> languages.
>
> I want to know if most of the software jobs in the market are software
> maintenance (fix bugs, new feature enhancements on existing code)
> rather than new developments (from scratch). This is my first job as a
> Java programmer, but I really don't see I do much Java development, all
> I do is to fix bugs, and add some new features for new builds. Well, of
> course I need to understand the logic of existing code, but my
> standpoint is that even I don't know Java well, I still can do the
> work.
>
> Is that normal in my case? Or I am just unlucky...
>
> Please advise. thanks!!
>


It's normal. It's something of a privilege to work on a new project, and
especially when you're new you'll tend to get stuck on the fixing jobs,
simply because there are usually more fixes to be done.

--
Ross Bamford - (E-Mail Removed)
 
Reply With Quote
 
xpyttl
Guest
Posts: n/a
 
      10-20-2005
There probably is a lot more maintenance going on than new construction.

But I would hope that most shops would expect new programmers to do a fair
bit of maintenance before they do new development. Its pretty easy to
design cool new stuff without any consideration for what it costs to own
that code. If you spend some time getting beat up by other people's
mistakes, you are less likely to make those mistakes on your own.

...

<(E-Mail Removed)> wrote in message
news:(E-Mail Removed) oups.com...
> This topic should apply to software jobs regardless of the programming
> languages.
>
> I want to know if most of the software jobs in the market are software
> maintenance (fix bugs, new feature enhancements on existing code)
> rather than new developments (from scratch). This is my first job as a
> Java programmer, but I really don't see I do much Java development, all
> I do is to fix bugs, and add some new features for new builds. Well, of
> course I need to understand the logic of existing code, but my
> standpoint is that even I don't know Java well, I still can do the
> work.
>
> Is that normal in my case? Or I am just unlucky...
>
> Please advise. thanks!!
>



 
Reply With Quote
 
Phlip
Guest
Posts: n/a
 
      10-20-2005
apngss wrote:

> I want to know if most of the software jobs in the market are software
> maintenance (fix bugs, new feature enhancements on existing code)
> rather than new developments (from scratch). This is my first job as a
> Java programmer, but I really don't see I do much Java development, all
> I do is to fix bugs, and add some new features for new builds. Well, of
> course I need to understand the logic of existing code, but my
> standpoint is that even I don't know Java well, I still can do the
> work.
>
> Is that normal in my case? Or I am just unlucky...


Ideally, all software projects should deploy to real users as soon as
possible. Then all further development is "maintenance", because you must
preserve existing (good) features while adding better ones. That depends on
clean code.

In your case, you are probably unlucky. Much software was written in a big
rush, under the belief that the software can't deploy until it has enough
features that customers will buy it and then use it through long maintenance
cycles. So the code has lots of bugs and a poor design.

The next AntiPattern in our industry: Managers then put the new guys into
maintenance, because it's slow burn. The hot-shots who wrote the bugs and
the poor design get rewarded with new and more lucrative projects.

Install JUnit, and start these policy:

- capture bugs with tests. Write new test cases
to capture every bug before killing it

- as you learn about the code, refactor - just a
little - to clean it up

That effort allows the code to get better over time. When you fix a bug, do
not throw away the knowledge that is fresh in your head write now. Invest
that knowledge back into the code by improving its test resistance.

--
Phlip
http://www.greencheese.org/ZeekLand <-- NOT a blog!!!


 
Reply With Quote
 
Walter Roberson
Guest
Posts: n/a
 
      10-20-2005
In article <(E-Mail Removed) .com>,
<(E-Mail Removed)> wrote:
>This topic should apply to software jobs regardless of the programming
>languages.


>I want to know if most of the software jobs in the market are software
>maintenance (fix bugs, new feature enhancements on existing code)
>rather than new developments (from scratch).


As others have noted, it is quite common to put new people onto
maintenance.

One of the posters suggested that this was training so that people
would learn the value of writing good maintainable code. Posters
might also have suggested [but haven't yet in my timeframe] that it
was an opportunity to give the new programmer a good understanding of
the project as a whole.

These two factors certainly apply, but there is another factor which
is often more important: maintenance is given to the new programmer
because in most power relationships, you give the unwanted tasks to
those who don't have the power to effectively refuse them.

In -every- programming environment i have worked in, the young
new programmers have chomped at the bit, eager to *write programs*,
and frustrated when they aren't given a program to write within a matter
of days. I have often seen new programmers upset that they aren't
creating new programs yet; often they would at least -say- that they
were thinking seriously of quiting because "this isn't what I
hired on for!" And most of them held that resentment of doing
maintenance (or even real formalized design specs), and pushed their
managers to rush into -new- -code-. Quite a few of them thereafter
refused to do maintenance as soon as they had accumulated enough
internal political capital to make it stick.

I've heard much the same thing from other people I know who are
in the software industry: most programmers really dislike code
maintenance -- even if it is their own code that is being maintained!
Most do not even like to do feature or design changes to their
existing code, not unless the change is clearly to add something "new".

Even to get someone to rewrite their code to make it faster
can be hard to convince them to do, unless you can make the situation
into a challenge to make their code run as quickly as possible...
a situation which often results in unmaintainable code that would
probably run slower on the next compiler over.

New programmers get stuck with maintenance because the more
senior people don't like to do maintenance. I've heard intermediate
people seriously tell their manager they would quit if they
were not given a "real" programming project.


The flip side of this is that it turns out that relatively few people
are actually -good- at maintenance. To be able to take existing code
(often poorly documented) and not only figure out what it -does- do,
but to figure out what it was -meant- to do, and to do massive
revisions to get clean code that does what it -should- do -- this is a
skill that I have rarely encountered. For a disorganized program of any
real size, it requires someone who is patient and an excellent mental
modeller, able to simultaneously hold in mind -many- program aspects
and relate them all to each other, seeing the overview of what is
logically consistant and yet able to pinpoint the minute details of
what does not fit. My experience suggests that the portion of
such people is less than 1 in 100 programmers; I'm not even confident
that as many as 3 in 1000 are good at this kind of work.
--
"No one has the right to destroy another person's belief by
demanding empirical evidence." -- Ann Landers
 
Reply With Quote
 
Roedy Green
Guest
Posts: n/a
 
      10-20-2005
On Thu, 20 Oct 2005 14:06:52 +0000 (UTC), http://www.velocityreviews.com/forums/(E-Mail Removed)-cnrc.gc.ca
(Walter Roberson) wrote or quoted :

>The flip side of this is that it turns out that relatively few people
>are actually -good- at maintenance.


Chairman Mao used to insist bureaucrats spent a few weeks each year
out on the farms. If he were in charge of the world's programming I
think he would do two things:

1. make all programmers spend a few weeks a year maintaining code so
they would learn what you need to do to write maintainable code and
what makes code unmaintainable. See
http://mindprod.com/jgloss/unmain.html

2. make all system programmers and language designers also spend a few
months a year doing applications coding so they would stop designing
to make their jobs easier and consider the application coder too.

--
Canadian Mind Products, Roedy Green.
http://mindprod.com Again taking new Java programming contracts.
 
Reply With Quote
 
BigBrian
Guest
Posts: n/a
 
      10-20-2005
(E-Mail Removed) wrote:
> This topic should apply to software jobs regardless of the programming
> languages.
>
> I want to know if most of the software jobs in the market are software
> maintenance (fix bugs, new feature enhancements on existing code)
> rather than new developments (from scratch). This is my first job as a
> Java programmer, but I really don't see I do much Java development, all
> I do is to fix bugs, and add some new features for new builds. Well, of
> course I need to understand the logic of existing code, but my
> standpoint is that even I don't know Java well, I still can do the
> work.


I would be willing to bet that if you don't understand Java that well,
then you aren't doing the work as well as you think you are. You
should look at this an opportunity to learn every feature of the
language and use this knowledge to correct the bugs and/or bad design
decisions that may be the real cause of the bug. Doing this will gain
you alot of respect within your group. Maintance is a very important
part of the software life cycle.

> Is that normal in my case?


Yes, it's normal. And this is not a bad thing. If you're never in
maintainence mode, this probably means that your product has been
replaced with another vendors product and now you're scrambling to
start up another project.

It seems that the trend for software projects is for them to get larger
and larger. As this trend continues, more and more people will be
doing maintance, and those who do it well will be rewarded and valued.

> Or I am just unlucky...


No, you apparently have a job, and have admitted that you don't know
Java all that well. Sounds like you're very lucky!! ( I know expert
programmers who are looking for work. )

 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
most software jobs are software maintenance rather than new development? apngss@yahoo.com C Programming 131 11-12-2005 07:23 PM
most software jobs are software maintenance rather than new development? apngss@yahoo.com Java 124 11-12-2005 07:23 PM
JOBs............JOBs............JOBs hardikh2000 Python 0 08-16-2005 03:55 AM



Advertisments