I started my first ever job eight months ago, as a Junior Developer. Basically, my job is to write PHP, and up until now it's always been picking up small tasks that need doing, and doing them.
Now, along with another developer (I'm not sure what his job title is, but I don't think he was around for long before I joined), we are to completely recreate the company's billing system from scratch.
Normally, I would absolutely love this kind of challenge. However, the task is just too big. There is no real specification other than vague things like "make it work like the old one but better". There is no project manager or anything, just the boss who wants it done. It is to be done by the middle of October, otherwise the other Director will write it himself - it should be noted that this person is... well, not a very good programmer. To cite an example, I had to fix code of his that established a new MySQL connection every single time he wanted to run a query, and never closed any of them, then wondered why loading a page with a few hundred queries on it crashed the server...
I'm not the only one disgruntled by the lack of proper organisation and leadership - I've had discussions with colleagues, one of which has been around since almost the beginning. We're all in agreement that leadership is lacking.
But I'm not sure what to do about it. The way I see it, I have three options:
Deal with it, and do the work as best I can within the situation.
Quit on the grounds that it is difficult/impossible to work in these conditions.
Explain that the work I am being given is not suitable for a "Junior Developer" and that either someone else should be in charge of it (ie. a proper project manager) or I should be given a higher job title (and salary with it)
I... really don't know what to do. This is my first job, and I have little idea how things should be... Any advice on this matter would be very much appreciated.
I thought I'd leave a follow-up for you all.
After talking it through with my father, my coworkers, and finally my boss, it's been decided that I will continue doing my ad hoc "small tasks that need doing", on a part-time basis. This has the added benefit of giving me time to work on my personal projects, which had pretty much ground to a halt in recent months.
Thank you everyone for your help, it has indeed been very much appreciated.
A billing system is something like CSS BT's Uber system that bills for all the telecoms usage in the UK
– Pepone Jul 30 '14 at 15:12