I would be very grateful if you could please take some time to advise me on these two issues. I�m 30 years old (next month) and I have been working for a web development company here in London, UK since September 2003. I�m currently earning �23, 500.
1.I feel that this salary is very low for a person of my industry experience. The major problem with me is that I�m not good at discussing such issues with management, some people can stand up for themselves and complain in these matters but I can�t � it�s just my nature. When I joined the company fresh from university I was on �17,000. Then about 1.5 years later it went to �18,000, then �21,000 and finally it went up to �23,500 about two months ago when I politely brought it up during my yearly review. I told them that I have a wife and son that I need to look after and I could do with a bit of extra help.
I am aware that most of my fellow developers earn about �30k+. I spoke to three of them about my situation asking for their advice and one of them was actually disgusted that I could be paid so low. She wanted to actually go and complain to authority there and then but I told her not to do it especially as it was after a few glasses of beer.
Financially, the company is doing really well and business is booming.
2.The company that I work for does not care about the quality of the software which the developers produce. The only thing they care about is that it is delivered to the client and on time. Most projects are developed by one developer from start to finish so that only one developer ever understands how that application works. If that developer leaves someone else has to take it on for maintenance and it�s usually horrible.
There are no mentors. For example, about a year ago we started using .Net for a great deal of development and there was no training arranged in .Net for any of the developers. Most of the developers were classic ASP people and they suddenly had to switch to Object Oriented Programming just like that. You won�t believe some of the things that I�ve seen in our .Net projects

I also developed an application from scratch in .Net 1.1 and I�m not really happy with the final product. However, it�s due to be released to the client soon but I have learnt some lessons from it.
I really feel bad about the fact that no one cares about software quality. We don�t even have CVS to manage code repositories. It�s chaos. I want to progress as a developer so that one day I can be one of the best but I don�t feel that this is the place where I will get this. I want to be an architect or maybe a consultant too down the years. It�s good that no one tells us how to program stuff as we can do whatever we want but I know that this is not really good because we can�t discipline ourselves as far as good coding practices are concerned.
Recently I had to go to a client�s office with two project managers and another developer to discuss how we were going to progress with a late project. There were lots of angry people there since the product was meant to be delivered in March but we are still nowhere near delivery. One person from the client�s team asked us for the documentation of the product and the developer I was with told him that �We develop the product first and then write the documentation when the product has been released�. I wanted to be invisible then as I knew that he had stabbed himself in the chest. The person simply replied �Well, that�s not industry practice � documentation is written alongside development�. You can imagine how tense the situation was. Now I have to go and document the .Net application which I started writing last year May!
The kind of developer I am I am passionate about programming and this will never change

I had a bit of experience in JSP/Servlets/Tomcat/MySQL after leaving university.
J2EE is still my favourite technology but this is never used at work. I am a competent
Java developer as I understand the fundamentals of OOP and my website is currently running on
JSP. I also understand how to build swing apps - right now I manage my own Java swing application called �Geek Tools�. It�s meant to be a tool to help developers with their day to day activities and it�s meant to offer different tools which are selected from a JTree menu on the left. Right now it can connect to Oracle, MS Sql, MySql, MS Access using
JDBC to show table structures and to allow users to browse database tables using JTable. I am very proud of it and that is mainly how I maintain my Java enthusiasm. Another tool is an LDAP browser. I�m planning to update my site to use Java Server Faces as well but time is not on my side since I�m a family man now.
Other technologies which I have learnt since joining work: ASP, ColdFusion, Php, ASP.Net, C#, SQL and more.
Nowadays you can find me at my office at 1 a.m. trying to implement the DAO
pattern in C# - something all my fellow developers would not know what it is without looking it up on Google

Or I would be up scratching my head trying to figure out why Windows can�t see my Suse Linux Samba shares.
As you can see I�m a self-motivated learner. I know that I should leave but I guess I�m too comfortable where I am especially as I can even walk to the office if I weren�t lazy. Then there is also the fear of what will happen when I move on � I know a guy who left to join another company and the company went bust 3 months later. Scary!
I�m not a UK citizen but I now have permanent residency over here. This year I�m eligible to apply for UK citizenship and I�m 100% sure that I will get that.
So what advice do you have for me?