Ask HN: Software Contractor Question

1 points by valarauca1 ↗ HN
I was recently hired as a Software Contractor for 6 months a smaller global company, which has a very large software work force. Most the business is split between Dot Net front end development and embedded C developers.

I was hired in to be a local onsite embedded C developer and tune the performance of the companies "framework" which is largely a big program that is modified via scripts for each customer and loads device drivers in a sem-modular way. Its performance has degraded highly over the past 6 years its been in production. And it has extreme issues with scalling.

After 4 rounds of HR interviews, 1 code test, 2 technical phone interviews, and 2 in person technical interviews I was hired. The interview tasks were simple. Find simple things or explain how things work within the code base, based on guided questioning to see if I could read and comprehend code I'd be working in.

On the first day of work I was assigned ~20 bugs to fix in my first week. I immediately asked if I'd recieve any other training on the platform (or if there was plateform documentation) as I've only spent approximately <1hr with the company's code base. To which I was told there is none, and I'd likely recieve some in a week or two, and "sit tight and wait" until then.

Is it unreasonble to contact my contracting agency and ask them about the situtation?

3 comments

[ 3.2 ms ] story [ 14.3 ms ] thread
You need to talk to the person you report to at your employer. Dragging the contracting agency into this at this point is not reasonable.

And, unfortunately, you may find that this is the situation and you have to live with it. My first job was very similar. I worked as an embedded C developer at a laser printer manufacturer, and I had to fix bugs in a giant codebase with basically no documentation on the software itself. It was a sink or swim situation, discouraging at first but once I got over the learning curve I did fine.

This is not my first, or even second position. I have several years of experience. The company paid good lip service to proper software methodologies in interviews.

On top of this is a monolithic object model. With every device produced by the company (the company does PCB fabs) supported within the code base, literally hundreds of thousands of devices.

OK. Unfortunately, this is pretty typical of embedded development. The mentality tends to be that "nobody is going to see" the code, so only the external interfaces are well documented and understanding of the internals resides in comments and institutional knowledge.