Sign in to follow this  
Followers 0

How to get into the Software World?

37 posts in this topic

I see that there are many TTers, who themselves work in the IT field, and i thought, as somebody who wants to get into the software world from scratch, i could get some insights from you.

 

When i say "getting into the software world from scratch", i don't mean to become a software developer/engineer, as i am too old to start a new career (38), but combining some software skills with my experience in my field (mechanical engineer), because i see big risk for myself in the future without those, when i see the trends in the world.

 

So, what kind of a path would you advise me to follow? My own research shows that, somebody without any previous software experience, should start with learning "Python", and reading books like "Coding for dummies :)". 

 

Feel free to ask any question for better guidance.

0

Share this post


Link to post
Share on other sites

With a background in mechanical engineering, why not something like autoCAD development?

0

Share this post


Link to post
Share on other sites

Autocad while a good product isn't what most the larger firms use.  Catia and Creo would be good targets.  You can do online training on Youtube free or find somewhere with Lab's so you can do practicals.  

0

Share this post


Link to post
Share on other sites

Regarding age, we hired a few years ago a guy who only started professional programming at the age of 40. On the other hand, I started programming at the age of 6 and most SW developers started well before adult age.

 

I think you've missed a simple solution for your problem: go into management!

1

Share this post


Link to post
Share on other sites
3 hours ago, pmd said:

With a background in mechanical engineering, why not something like autoCAD development?

 

What do you mean by AutoCAD development? Do you mean developing design tools/add-ins for Autocad?

 

2 hours ago, NeutronCore said:

Autocad while a good product isn't what most the larger firms use.  Catia and Creo would be good targets.  You can do online training on Youtube free or find somewhere with Lab's so you can do practicals.  

 

I assume you are not talking about the use of the CAD tool itself, but utilizing software to automate some design tasks, which is also under the framework of Industry4.0, right? I've been actually an active NX user for many years, and one of the options i'm considering is utilizing a software to automate design tasks (design automation).

 

1 hour ago, MikeMelga said:

Regarding age, we hired a few years ago a guy who only started professional programming at the age of 40. On the other hand, I started programming at the age of 6 and most SW developers started well before adult age.

 

I think you've missed a simple solution for your problem: go into management!

 

Although it is not impossible at my age to make a career change, it will lead to going back to starting salaries of an engineer. I have attended a seminar organized by a company, which trains people in Web development 3 weeks ago, and it was mentioned in their presentation that, the starting salary after the training is around 35k.

 

With regards to the management, i find the chances low for a foreigner in Germany, when he/she doesn't have near native level German skills (not saying it is impossible).

0

Share this post


Link to post
Share on other sites
13 hours ago, pmd said:

With a background in mechanical engineering, why not something like autoCAD development?

 

Yes, I mean writing code, not just learning to use AutoCAD.

 

I am trying to remember what the hardware guys did in the company I used to work for which might be more relevant.

 

I remember a couple of them had to get trained up in PLC programming. That could be a good fit for you. Others did scripting languages like Perl which was useful for formating cad files (I worked for a Machine Vision company in the SMT industry).

0

Share this post


Link to post
Share on other sites

I would ask about what exactly you want to achieve?   IT and Software is very vague and can encompass almost anything.  

 

As @pmd said, would it not be better to learn how to use some specific piece of software which could be relevant to your career?

 

You say you don't wan to be a programmer but what to learn Python.  So then why?  Why do you want to learn how to program?  

There are many different programming languages of different types, some are very niche, some pay better than others, some are (mainly) used in specific industries, some are used mainly to extend existing programs, some only run on specific hardware.  etc. etc.  So just picking one by random might not be the best choice.

 

Look at this for example:

https://en.wikipedia.org/wiki/List_of_programming_languages_by_type

 

Python is very popular at the moment, which is why you might have selected it.  But, when learning, the important thing is to understand the concepts and ideas more than the language so actually you need to follow a course which will introduce you to programming more than selecting a language.  So I suggest to find a good series online, on youtube which you can easily follow which is aimed at newbies/noobs (technical term!)

 

This will be better than spending money on a book.  I am anyway no fan of the dummies series.

 

 

 

0

Share this post


Link to post
Share on other sites
17 hours ago, TurMech said:

Although it is not impossible at my age to make a career change, it will lead to going back to starting salaries of an engineer. I have attended a seminar organized by a company, which trains people in Web development 3 weeks ago, and it was mentioned in their presentation that, the starting salary after the training is around 35k.

Web development is a waste for a mechanical engineer.

 

17 hours ago, TurMech said:

 

With regards to the management, i find the chances low for a foreigner in Germany, when he/she doesn't have near native level German skills (not saying it is impossible).

The main requirement for a manager with no German skills to succeed in Germany is a big pair of balls.

1

Share this post


Link to post
Share on other sites
4 hours ago, dj_jay_smith said:

I would ask about what exactly you want to achieve?   IT and Software is very vague and can encompass almost anything.  

 

 

I have been designing hard parts in various industries (Automotive, Household appliances, Aviation, Energy) for the past 15 years, and the trend i see is that, the demand to my skills are either reducing day by day, or the value of my profession is decreasing, which is also a big problem for the future of Germany from my point of view, as it is a manufacturing, heavy industries based economy. Like the manufacturing, the design capabilities of the Asian countries are growing, and much of the design work today is outsourced as work packages. To survive in the expensive part of the world, design is also intended to be automated like the manufacturing, which means computers will in the future do most of the repetitive, iterative, and calculation based part of the design process (for example a technical drawing creation, or with minimal input, a complete structural/thermal calculation).

 

In order not to be obsolete and stay competitive in the market 10 years later, i want to catch this trend and be part of it. The only way i can see to do this is to combine my experience with some software skills. 

 

4 hours ago, dj_jay_smith said:

As @pmd said, would it not be better to learn how to use some specific piece of software which could be relevant to your career?

 

I am already currently using several softwares in my branch, but as i wrote above, i fear that, either most of this work in the future be automated, or get done in to the low cost countries.

 

5 hours ago, dj_jay_smith said:

You say you don't wan to be a programmer but what to learn Python.  So then why?  Why do you want to learn how to program?  

 

The engineering software, which i use in my daily work has a module called NX Open. This supports creating custom applications via Visual Basic, C#, C++, Python, and Java. Among these, the easiest to learn and the most popular seems to be Python. But that is my week point. I don't know the differences and capabilities of each.

 

Please see:

https://docs.plm.automation.siemens.com/tdoc/nx/10/nx_api#uid:index

 

5 hours ago, dj_jay_smith said:

Python is very popular at the moment, which is why you might have selected it.  But, when learning, the important thing is to understand the concepts and ideas more than the language so actually you need to follow a course which will introduce you to programming more than selecting a language.  So I suggest to find a good series online, on youtube which you can easily follow which is aimed at newbies/noobs (technical term!)

 

I have bought a course in Udemy. I am very much open to alternatives and the best guidance in this area, from experienced people like you.

 

1 hour ago, MikeMelga said:

Web development is a waste for a mechanical engineer.

 

I fully agree. I didn't know what it was before attending this seminar, and it has opened my eyes.

 

1 hour ago, MikeMelga said:

The main requirement for a manager with no German skills to succeed in Germany is a big pair of balls.

 

I am not sure i understand what you mean :).

2

Share this post


Link to post
Share on other sites
4 minutes ago, TurMech said:

The engineering software, which i use in my daily work has a module called NX Open. This supports creating custom applications via Visual Basic, C#, C++, Python, and Java. Among these, the easiest to learn and the most popular seems to be Python. But that is my week point. I don't know the differences and capabilities of each.

 

Please see:

https://docs.plm.automation.siemens.com/tdoc/nx/10/nx_api#uid:index

 

first, I totally agree with Mike that going for any kind of web dev training is a complete waste of time.  Depending on what the course covered, you could easily come away with just basic scripting skills - not really programming.

 

If you want to stick with the idea of targeting NX Open, it seems to me you could pick any of the supported languages as a place to start.  Python is very approachable and would probably be the easiest to learn, which is good (you're right about that) but Java is pretty approachable too, and might give you a better set of skills and concepts to work with as you'd be learning a more full-featured language.  

 

C++ has some strong overall advantages but it's much more niggly than Java and thus harder to learn well.  The up side is that if you can get pretty good with C++, learning the others, if needed, would be a complete non-issue, but I tend to think it might be overkill unless you find it's a dominant language used in your field.   

 

C#...eh, I like it, but at least for general software engineers, I don't see as much demand for it as I do for the other languages cited.  This may be different in your industry so I can't guess if it might be useful to you, personally, or not.  

 

visual basic.  Don't go there unless you want to forever poison your mind :)  (ok to be fair, it can be quite easy to learn but I can't say I consider it "programming" - every time I try to discuss programming with a vb person it's like...just...oh no.  forgive me, vb lovers)

 

I agree wholeheartedly with dj that the most important thing is to learn and become comfortable with the concepts of programming before you go crazy with specializing in any libraries or even languages.  But I'm not sure any of us could point you to specific online courses as...we already done that.  In many cases ages ago, often using...GASP!...books? 

 

Just find a intro to programming series that has decent comments/reviews and start.  

 

1

Share this post


Link to post
Share on other sites
37 minutes ago, TurMech said:

 

2 hours ago, MikeMelga said:

The main requirement for a manager with no German skills to succeed in Germany is a big pair of balls.

 

I am not sure i understand what you mean :).

 

neither do I :P

 

2

Share this post


Link to post
Share on other sites
2 hours ago, MikeMelga said:

The main requirement for a manager with no German skills to succeed in Germany is a big pair of balls.

44 minutes ago, TurMech said:

I am not sure i understand what you mean :)

 

 

Like these. 

 

5dab385b7276c_beachballs.jpeg.38609cf2e6

1

Share this post


Link to post
Share on other sites
43 minutes ago, TurMech said:

 

I have been designing hard parts in various industries (Automotive, Household appliances, Aviation, Energy) for the past 15 years, and the trend i see is that, the demand to my skills are either reducing day by day, or the value of my profession is decreasing, which is also a big problem for the future of Germany from my point of view, as it is a manufacturing, heavy industries based economy. Like the manufacturing, the design capabilities of the Asian countries are growing, and much of the design work today is outsourced as work packages. To survive in the expensive part of the world, design is also intended to be automated like the manufacturing, which means computers will in the future do most of the repetitive, iterative, and calculation based part of the design process (for example a technical drawing creation, or with minimal input, a complete structural/thermal calculation).

 

In order not to be obsolete and stay competitive in the market 10 years later, i want to catch this trend and be part of it. The only way i can see to do this is to combine my experience with some software skills. 

 

 

I am already currently using several softwares in my branch, but as i wrote above, i fear that, either most of this work in the future be automated, or get done in to the low cost countries.

 

 

The engineering software, which i use in my daily work has a module called NX Open. This supports creating custom applications via Visual Basic, C#, C++, Python, and Java. Among these, the easiest to learn and the most popular seems to be Python. But that is my week point. I don't know the differences and capabilities of each.

 

Please see:

https://docs.plm.automation.siemens.com/tdoc/nx/10/nx_api#uid:index

 

 

I have bought a course in Udemy. I am very much open to alternatives and the best guidance in this area, from experienced people like you.

 

 

I fully agree. I didn't know what it was before attending this seminar, and it has opened my eyes.

 

 

I am not sure i understand what you mean :).

 

Good feedback.

 

To be honest, I notice the same things in the IT industry, except that maybe it moves quicker.  But somebody who has a range of skills is going to have an advantage when applying for new positions so I think you are doing a good things.

 

The Udemy course is a good thing to do.  But just be sure that you also learn general programming skills and not just skills for learning a language.  

A good programmer will apply the same skills no matter which language they will use.

 

Python is very popular at the moment.  I also saw a report recently that it currently pays better than some other languages, but I expect this to change as the number of people learning it will increase drastically in the new couple of years (partly because it pays well, and partly because it is being popular meaning more people will learn it).  But, as you are doing this on the side then you don't need to worry about this so much.

 

 

I suggest staying away from Visual Basic (VB) or C++ as a beginner.  

Java is very, very popular in all industries.  And coule be a good option for you.

I personally love C#.  I create many windows applications with it, for fun, and to help me with different things in the office.  It is very versatile and expanding a lot too.  I think that this is easier to learn than Java, but that is just my opinion.  (Many Java programmers are a bit like Apple fans and will defend it to the earth!).

 

But, if you have paid for a Python course then stick with that for now.

Once you have finished and know the basics the best way to improve your skills is to set simple tasks to do.

The key thing is to keep going.  Use Youtube to learn new things, stay curious.  A good programmer never stops learning!

 

And good luck!

 

 

1

Share this post


Link to post
Share on other sites

oh, one more thing:  I'm not sure if you are familiar with stack overflow but you should be.  It's a fabulous resource when you have questions or problems.  Just be sure to search for your issue before asking a new question because 9 times out of 10 it's already covered - for beginners questions it's more like 11/10

 

https://stackoverflow.com/questions

2

Share this post


Link to post
Share on other sites
20 hours ago, lisa13 said:

C#...eh, I like it, but at least for general software engineers, I don't see as much demand for it as I do for the other languages cited.  This may be different in your industry so I can't guess if it might be useful to you, personally, or not.  

C# is one of the languages with more demand. It is also the one with the best IDE and best online documentation.

Also excellent 3rd party component support.

In Asia all my customers use C#, despite my attempts to make them use C++ for performance reasons. So if you are targeting the asian market, C# is pratically mandatory.

0

Share this post


Link to post
Share on other sites

that's not what I've seen wrt job listings, but I do think it depends on the niche.  I agree with the other points, definitely

1

Share this post


Link to post
Share on other sites
20 hours ago, dj_jay_smith said:

I suggest staying away from Visual Basic (VB) or C++ as a beginner.  

Java is very, very popular in all industries.  And coule be a good option for you.

I personally love C#.  I create many windows applications with it, for fun, and to help me with different things in the office.  It is very versatile and expanding a lot too.  I think that this is easier to learn than Java, but that is just my opinion.  (Many Java programmers are a bit like Apple fans and will defend it to the earth!).

Agree. VB is dead. C++ is too hard unless you have a lot of experience.

C# hits all the bullet points.

1

Share this post


Link to post
Share on other sites
Just now, lisa13 said:

that's not what I've seen wrt job listings, but I do think it depends on the niche.  I agree with the other points, definitely

Because here we are very embedded and automotive focused. Move away from automotive and C# becomes a favorite

I know several non-automotive big companies in Munich that make multi-million LOC sw in C#.

0

Share this post


Link to post
Share on other sites

If you followed all the advice given here, you would succeed at an entry-level position in a Highly-Competitive Global Career, much of which is being outsourced to the lowest bidder.

1

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now
Sign in to follow this  
Followers 0