Im a Software Engineer that cant write software....
Discussion
Morning all,
I’m hoping the wise minds of PH will help me out with a career issue. Im an engineer by trade having done an apprenticeship with BAE Systems and then HNC/HND's in engineering. I have worked in the aerospace industry for the last 15 years.
My contract is coming to an end this month and I find myself with a problem. For the last 6 years I have been a Software / Systems Test Engineer on the Typhoon Project. I was luckily enough to be given the job and the chance to learn even though I have never done anything with software in my life. I have really enjoyed the debugging, investigations and the integration of our product. We use propriety software that’s not used outside our industry so all that I have learned is no use outside these walls, at least at a language/coding level.
So, I find myself applying for jobs, but what am I? Am I really a software engineer, or am I just a generic aerospace test engineer.
My question for all you is simple, what coding languages shall I try and learn and what are the best most recognised qualifications / courses I should apply for while I am job hunting.
Thanks
LP
I’m hoping the wise minds of PH will help me out with a career issue. Im an engineer by trade having done an apprenticeship with BAE Systems and then HNC/HND's in engineering. I have worked in the aerospace industry for the last 15 years.
My contract is coming to an end this month and I find myself with a problem. For the last 6 years I have been a Software / Systems Test Engineer on the Typhoon Project. I was luckily enough to be given the job and the chance to learn even though I have never done anything with software in my life. I have really enjoyed the debugging, investigations and the integration of our product. We use propriety software that’s not used outside our industry so all that I have learned is no use outside these walls, at least at a language/coding level.
So, I find myself applying for jobs, but what am I? Am I really a software engineer, or am I just a generic aerospace test engineer.
My question for all you is simple, what coding languages shall I try and learn and what are the best most recognised qualifications / courses I should apply for while I am job hunting.
Thanks
LP
I was in a similar situation years back, my first job in software development used an in house language. I stayed there for 3 years then realised I would have to leave now or I'd be stuck.
I was a bit more fortunate in that I had done a computer science degree do I had some experience or other languages. I worked on a couple of home projects then applied for a Junior ish level developer job at another firm using a proper language. I was perhaps economical with the truth when asked about my experience and mingled my home / work experience somewhat.
Worked there for a year and realised my 3 previous years hadn't been wasted as a lot of the practices, theory etc still applied. Then moved firms again into a non junior role. Everything is a blur from there
Fast forward 7 years and I work as a freelancer / contractor. I do c# Web stuff.
I was a bit more fortunate in that I had done a computer science degree do I had some experience or other languages. I worked on a couple of home projects then applied for a Junior ish level developer job at another firm using a proper language. I was perhaps economical with the truth when asked about my experience and mingled my home / work experience somewhat.
Worked there for a year and realised my 3 previous years hadn't been wasted as a lot of the practices, theory etc still applied. Then moved firms again into a non junior role. Everything is a blur from there
Fast forward 7 years and I work as a freelancer / contractor. I do c# Web stuff.
Edited by NerveAgent on Friday 5th December 08:57
Up to a point, language is irrelevant. SW engineering is largely about core skills like analysis, structure, patterns and problem solving. I regularly move between languages and pick up wholly new ones. Therefore it doesn't inherently matter that you've been working in a proprietary language if the skills you've picked up are the same. How you describe yourself isn't enough to immediately file your CV in the bin.
You may sense a 'but'.
If you grew up professionally on a particular language, like say C or god forbid PHP, you probably pick up traits from that that aren't healthy when applied elsewhere. This likely applies to whatever you did. Ditto professional working environment and domain - both the defence industry and safety critical domains are a world apart from commercial software development. Then again, evolving and adapting to relevant practice is part of being a decent engineer of any kind.
Similarly if you learnt your first software language via on-the-job training, rather than the well-trodden route of academia, then (and it depends on the job) you might have missed out entirely on a lot of valuable theory; why we do things, not just how. If I was a prospective employer, this would be a concern.
If you don't have any skills in a commodity language like C++, Java or Objective C then you're going to be outclassed in most job applications by the people who may be worse engineers but ready to start doing stuff on day one. You would have to look for jobs involving equally weird proprietary stuff, and there can't be many.
I would suggest that if you enjoyed your development work, you do a bit of book reading and hobbyist development in your own time to prove up your skills in some specific languages - partly to employers but largely to yourself. For example you could get involved in open source development or similar.
Ultimately I wouldn't be itching to hire a completely self-taught software engineer who learnt everything from a mixture of Waterstones and bedroom hacking. However I would be much happier hiring someone who'd been through formal teaching and career development in another engineering discipline, and then self-taught software to an apparently competent standard.
Otherwise it seems to me that you could take the other elements of what you did - test engineer - and apply them elsewhere much more easily.
Good luck either way!
You may sense a 'but'.
If you grew up professionally on a particular language, like say C or god forbid PHP, you probably pick up traits from that that aren't healthy when applied elsewhere. This likely applies to whatever you did. Ditto professional working environment and domain - both the defence industry and safety critical domains are a world apart from commercial software development. Then again, evolving and adapting to relevant practice is part of being a decent engineer of any kind.
Similarly if you learnt your first software language via on-the-job training, rather than the well-trodden route of academia, then (and it depends on the job) you might have missed out entirely on a lot of valuable theory; why we do things, not just how. If I was a prospective employer, this would be a concern.
If you don't have any skills in a commodity language like C++, Java or Objective C then you're going to be outclassed in most job applications by the people who may be worse engineers but ready to start doing stuff on day one. You would have to look for jobs involving equally weird proprietary stuff, and there can't be many.
I would suggest that if you enjoyed your development work, you do a bit of book reading and hobbyist development in your own time to prove up your skills in some specific languages - partly to employers but largely to yourself. For example you could get involved in open source development or similar.
Ultimately I wouldn't be itching to hire a completely self-taught software engineer who learnt everything from a mixture of Waterstones and bedroom hacking. However I would be much happier hiring someone who'd been through formal teaching and career development in another engineering discipline, and then self-taught software to an apparently competent standard.
Otherwise it seems to me that you could take the other elements of what you did - test engineer - and apply them elsewhere much more easily.
Good luck either way!
NerveAgent and Trashbat, thank you for your honest replies. It seems like I need to teach myself a language, and use it as a backup / enhancement to my developed testing skills.
In January I am already enrolled on 20h per week German course (6 years here and my German is embarrassingly bad so that needs fixing sharpish).
Are there any industry recognised online courses that are worth paying for?
I can play around with Linux enough to get things working on a pi. Is it worth looking at developing this more so I can possibly get my fingers into server / back end website work?
In January I am already enrolled on 20h per week German course (6 years here and my German is embarrassingly bad so that needs fixing sharpish).
Are there any industry recognised online courses that are worth paying for?
I can play around with Linux enough to get things working on a pi. Is it worth looking at developing this more so I can possibly get my fingers into server / back end website work?
Lord said:
NerveAgent and Trashbat, thank you for your honest replies. It seems like I need to teach myself a language, and use it as a backup / enhancement to my developed testing skills.
In January I am already enrolled on 20h per week German course (6 years here and my German is embarrassingly bad so that needs fixing sharpish).
Are there any industry recognised online courses that are worth paying for?
I can play around with Linux enough to get things working on a pi. Is it worth looking at developing this more so I can possibly get my fingers into server / back end website work?
Have a play with these guys and look around what you would like to learn.In January I am already enrolled on 20h per week German course (6 years here and my German is embarrassingly bad so that needs fixing sharpish).
Are there any industry recognised online courses that are worth paying for?
I can play around with Linux enough to get things working on a pi. Is it worth looking at developing this more so I can possibly get my fingers into server / back end website work?
http://www.pluralsight.com
Only you can chose form GUI, DB, both, something else... the list is massive... some people think new JS tech is the way to go for RAD, some people prefer the Microsoft Tech stack, some like JAVA...
Have a think at what interests you.
Test Automation (Writing & using software to test other software) is one of the big growth areas in software development.
The key question is do you want to become a software developer or do you want to continue in software testing.
What part of the country are you ? BAE Brough? Interested in work in Leeds for the top software testing consultancy in the country ? If so send me a PM.
Also take a look at Test Driven Development and Behaviour Driven Development.
You can always look to being a systems engineer / architect / analyst. Basically you design a system, down to component level, make sure that it covers requirements, is extensible, will scale etc but leave the actual coding to others. Look at stuff like the TOGAF framework etc. You need some knowledge of code - interfacing stuff mainly, message queues, SOAP and stuff like that but not necessarily how to code. Its more about how a system hangs together.
If you get experienced at this it'll earn more than coding.
I'd also leverage your knowledge of the aircraft and look for a job in the aerospace sector. Lots of suppliers for the F35 project all over the place, you may have desirable knowledge/skills.
If you get experienced at this it'll earn more than coding.
I'd also leverage your knowledge of the aircraft and look for a job in the aerospace sector. Lots of suppliers for the F35 project all over the place, you may have desirable knowledge/skills.
If you're interested in web technologies at all perhaps start by running through the courses on http://www.codecademy.com They're all free.
It starts with very basic stuff, but it covers very widely used web technologies which are all free to use and often are run or developed for on Linux.
Good luck with the job hunt!
It starts with very basic stuff, but it covers very widely used web technologies which are all free to use and often are run or developed for on Linux.
Good luck with the job hunt!
Martin / Crafty.
Thanks for some more valuable advice. I’m going to go over my options during the Christmas break. Yesterday i did get a sniff of a possible job doing Tornado Avionics so i am currently chasing that
Martin - I am actually based in Munich, I used to be in the north but moved out here 6 years ago.
Thanks for some more valuable advice. I’m going to go over my options during the Christmas break. Yesterday i did get a sniff of a possible job doing Tornado Avionics so i am currently chasing that
Martin - I am actually based in Munich, I used to be in the north but moved out here 6 years ago.
Du1point8 said:
Have a play with these guys and look around what you would like to learn.
http://www.pluralsight.com
Only you can chose form GUI, DB, both, something else... the list is massive... some people think new JS tech is the way to go for RAD, some people prefer the Microsoft Tech stack, some like JAVA...
Have a think at what interests you.
+1 pluralsighthttp://www.pluralsight.com
Only you can chose form GUI, DB, both, something else... the list is massive... some people think new JS tech is the way to go for RAD, some people prefer the Microsoft Tech stack, some like JAVA...
Have a think at what interests you.
We get a subscription with work and use it to learn most of the new tech.
Try to find a language and area which has high demand with decent pay. I'd suggest C# / MVC / Web Dev - then I am biased.
Allot of places would take you over a graduate for a junior role. Make sure you move jobs every couple of years and you'll be a on decent cash pretty fast.
Lord said:
Martin - I am actually based in Munich, I used to be in the north but moved out here 6 years ago.
You might want to follow the test automation group on LinkedInhttps://www.linkedin.com/groups/Test-automation-86...
You have implicitly raised what I consider an interesting question, which I'll paraphrase as "Can a Tester be a considered a Software Engineer?". It seems clear that quite a few responses suggest that the posters think that to be considered a "Software Engineer" you have to build software, i.e. be a programmer or software developer in order to be considered a Software Engineer.
I do not actually agree with that position and I will even go further and suggest that many software developers are not engineers. When they are using an artisan approach without being unit test driven, engaging in automated builds and post build compliance testing they are crafting software not engineering it.
In my book, to be considered a software engineer, the developer needs to measure their output. In a word _test_ is implicitly part of the job of a software engineer. In practice this means using Unit testing with tools like xUnit, continuous integration and automated builds, Automated Functional Testing, performance and static analysis.
Measuring your own output or the work of others is what makes you an engineer, so personally I have no objection to you calling your self a software engineer.
I can tell you as a former programmer/developer and software architect, the work I now carry out as Automation Test Consultant is some of the most interesting and challenging I've ever been engaged in.
Edited by Martin4x4 on Friday 12th December 13:17
You may want to consider which type of industry you want to work in and what the relevant rewards available are. I currently work in the corporate ERP/HCM market, and although the rewards are pretty good the work is dull. Given the chance the relive the past 15 years I think I would opt to stay with telecoms/network as the work is more interesting, well it was 15 years ago. The reason I'm telling you this is that the technologies, and more specifically the languages used, vary from sector to sector, so what you would learn in one is not always transferable to another.
Gassing Station | Jobs & Employment Matters | Top of Page | What's New | My Stuff