How to get out of enterprise software development?

The name of the pictureThe name of the pictureThe name of the pictureClash Royale CLAN TAG#URR8PPP





.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty margin-bottom:0;







up vote
14
down vote

favorite
3












Hopefully this question isn't too software specific. I imagine there are similar situations in most other fields.



I've been doing software development for about 7 years now. Most of that time was spent doing "enterprisey" things. That is to say, I've written lots of line of business applications. Some interesting - most, not so much. I love programming, but I don't think I can spend another decade doing this kind of grunt work. I want to move into something more substantial, but so far I've been unsuccessful.



I have a wide range of interests, but none of the requisite, deep domain knowledge. I spend a ton of time reading and experimenting in my off time, but it doesn't ever translate into better work. I try to play up my "hobby experience", but employers really don't care unless you've worked on a high-profile open source project. I'm beginning to consider entry level positions at a substantial pay cut just to get a foot in the door. Though even this makes you appear questionable to employers. It seems like your first job really defines the rest of your career.



How do I make the transition away from business apps to more fulfilling programming work?







share|improve this question


















  • 10




    I suspect the answer may depend on what you consider to be "more substantial" programming work.
    – Celos
    Apr 24 '15 at 6:22






  • 4




    What Celos said. What is "more substantial"? There is a school of thought that says programming should be boring. What would count as "better work", for you? Working for Google selling advertising space?!
    – AakashM
    Apr 24 '15 at 7:48






  • 1




    Can't you find small companies that would benefit from your expertise? I assume that enterprise software development comes with software development/management techniques that others can benefit from - something that you can emphasize when applying (Just don't make it I'll come and show you how your development process should be better - there has to be a need/request)
    – Jan Doggen
    Apr 24 '15 at 14:44







  • 2




    Maybe I'm missing something here, but why can't you just apply for different jobs?
    – GrandmasterB
    Apr 24 '15 at 21:00






  • 1




    what sectors do you want to move into?
    – Pepone
    Apr 24 '15 at 23:42
















up vote
14
down vote

favorite
3












Hopefully this question isn't too software specific. I imagine there are similar situations in most other fields.



I've been doing software development for about 7 years now. Most of that time was spent doing "enterprisey" things. That is to say, I've written lots of line of business applications. Some interesting - most, not so much. I love programming, but I don't think I can spend another decade doing this kind of grunt work. I want to move into something more substantial, but so far I've been unsuccessful.



I have a wide range of interests, but none of the requisite, deep domain knowledge. I spend a ton of time reading and experimenting in my off time, but it doesn't ever translate into better work. I try to play up my "hobby experience", but employers really don't care unless you've worked on a high-profile open source project. I'm beginning to consider entry level positions at a substantial pay cut just to get a foot in the door. Though even this makes you appear questionable to employers. It seems like your first job really defines the rest of your career.



How do I make the transition away from business apps to more fulfilling programming work?







share|improve this question


















  • 10




    I suspect the answer may depend on what you consider to be "more substantial" programming work.
    – Celos
    Apr 24 '15 at 6:22






  • 4




    What Celos said. What is "more substantial"? There is a school of thought that says programming should be boring. What would count as "better work", for you? Working for Google selling advertising space?!
    – AakashM
    Apr 24 '15 at 7:48






  • 1




    Can't you find small companies that would benefit from your expertise? I assume that enterprise software development comes with software development/management techniques that others can benefit from - something that you can emphasize when applying (Just don't make it I'll come and show you how your development process should be better - there has to be a need/request)
    – Jan Doggen
    Apr 24 '15 at 14:44







  • 2




    Maybe I'm missing something here, but why can't you just apply for different jobs?
    – GrandmasterB
    Apr 24 '15 at 21:00






  • 1




    what sectors do you want to move into?
    – Pepone
    Apr 24 '15 at 23:42












up vote
14
down vote

favorite
3









up vote
14
down vote

favorite
3






3





Hopefully this question isn't too software specific. I imagine there are similar situations in most other fields.



I've been doing software development for about 7 years now. Most of that time was spent doing "enterprisey" things. That is to say, I've written lots of line of business applications. Some interesting - most, not so much. I love programming, but I don't think I can spend another decade doing this kind of grunt work. I want to move into something more substantial, but so far I've been unsuccessful.



I have a wide range of interests, but none of the requisite, deep domain knowledge. I spend a ton of time reading and experimenting in my off time, but it doesn't ever translate into better work. I try to play up my "hobby experience", but employers really don't care unless you've worked on a high-profile open source project. I'm beginning to consider entry level positions at a substantial pay cut just to get a foot in the door. Though even this makes you appear questionable to employers. It seems like your first job really defines the rest of your career.



How do I make the transition away from business apps to more fulfilling programming work?







share|improve this question














Hopefully this question isn't too software specific. I imagine there are similar situations in most other fields.



I've been doing software development for about 7 years now. Most of that time was spent doing "enterprisey" things. That is to say, I've written lots of line of business applications. Some interesting - most, not so much. I love programming, but I don't think I can spend another decade doing this kind of grunt work. I want to move into something more substantial, but so far I've been unsuccessful.



I have a wide range of interests, but none of the requisite, deep domain knowledge. I spend a ton of time reading and experimenting in my off time, but it doesn't ever translate into better work. I try to play up my "hobby experience", but employers really don't care unless you've worked on a high-profile open source project. I'm beginning to consider entry level positions at a substantial pay cut just to get a foot in the door. Though even this makes you appear questionable to employers. It seems like your first job really defines the rest of your career.



How do I make the transition away from business apps to more fulfilling programming work?









share|improve this question













share|improve this question




share|improve this question








edited Apr 24 '15 at 23:29

























asked Apr 24 '15 at 5:09









ConditionRacer

1,25921019




1,25921019







  • 10




    I suspect the answer may depend on what you consider to be "more substantial" programming work.
    – Celos
    Apr 24 '15 at 6:22






  • 4




    What Celos said. What is "more substantial"? There is a school of thought that says programming should be boring. What would count as "better work", for you? Working for Google selling advertising space?!
    – AakashM
    Apr 24 '15 at 7:48






  • 1




    Can't you find small companies that would benefit from your expertise? I assume that enterprise software development comes with software development/management techniques that others can benefit from - something that you can emphasize when applying (Just don't make it I'll come and show you how your development process should be better - there has to be a need/request)
    – Jan Doggen
    Apr 24 '15 at 14:44







  • 2




    Maybe I'm missing something here, but why can't you just apply for different jobs?
    – GrandmasterB
    Apr 24 '15 at 21:00






  • 1




    what sectors do you want to move into?
    – Pepone
    Apr 24 '15 at 23:42












  • 10




    I suspect the answer may depend on what you consider to be "more substantial" programming work.
    – Celos
    Apr 24 '15 at 6:22






  • 4




    What Celos said. What is "more substantial"? There is a school of thought that says programming should be boring. What would count as "better work", for you? Working for Google selling advertising space?!
    – AakashM
    Apr 24 '15 at 7:48






  • 1




    Can't you find small companies that would benefit from your expertise? I assume that enterprise software development comes with software development/management techniques that others can benefit from - something that you can emphasize when applying (Just don't make it I'll come and show you how your development process should be better - there has to be a need/request)
    – Jan Doggen
    Apr 24 '15 at 14:44







  • 2




    Maybe I'm missing something here, but why can't you just apply for different jobs?
    – GrandmasterB
    Apr 24 '15 at 21:00






  • 1




    what sectors do you want to move into?
    – Pepone
    Apr 24 '15 at 23:42







10




10




I suspect the answer may depend on what you consider to be "more substantial" programming work.
– Celos
Apr 24 '15 at 6:22




I suspect the answer may depend on what you consider to be "more substantial" programming work.
– Celos
Apr 24 '15 at 6:22




4




4




What Celos said. What is "more substantial"? There is a school of thought that says programming should be boring. What would count as "better work", for you? Working for Google selling advertising space?!
– AakashM
Apr 24 '15 at 7:48




What Celos said. What is "more substantial"? There is a school of thought that says programming should be boring. What would count as "better work", for you? Working for Google selling advertising space?!
– AakashM
Apr 24 '15 at 7:48




1




1




Can't you find small companies that would benefit from your expertise? I assume that enterprise software development comes with software development/management techniques that others can benefit from - something that you can emphasize when applying (Just don't make it I'll come and show you how your development process should be better - there has to be a need/request)
– Jan Doggen
Apr 24 '15 at 14:44





Can't you find small companies that would benefit from your expertise? I assume that enterprise software development comes with software development/management techniques that others can benefit from - something that you can emphasize when applying (Just don't make it I'll come and show you how your development process should be better - there has to be a need/request)
– Jan Doggen
Apr 24 '15 at 14:44





2




2




Maybe I'm missing something here, but why can't you just apply for different jobs?
– GrandmasterB
Apr 24 '15 at 21:00




Maybe I'm missing something here, but why can't you just apply for different jobs?
– GrandmasterB
Apr 24 '15 at 21:00




1




1




what sectors do you want to move into?
– Pepone
Apr 24 '15 at 23:42




what sectors do you want to move into?
– Pepone
Apr 24 '15 at 23:42










3 Answers
3






active

oldest

votes

















up vote
18
down vote



accepted










I think you need to think about what is "wrong" with "enterprise development" and where you want to go/what you want to do.



As I see it there are 4 areas that you may be wanting to change




  • Technology - In the enterprise are you doing .Net/Java/C++? Are you wanting to do something like RoR/Python/Clojure etc. All these are used in both non-enterprise/enterprise situations. You are as likely to use Python in an investment bank as at a startup these days.


  • Projects - Is it the type of work? You may be doing CRUD apps onto a database, but you could just as easily be building high performance multi threaded realtime systems passing data into Hadoop clusters and delivering via continuous delivery multiple times a day.


  • Process - Are you doing some death march where you spend 6 months on a functional spec to spend 4 weeks writing something unrelated, or are you expediting stories via Kanban and getting instant feedback from the business as you commit code?


  • Company - Are you in a company that development is non-core to the business, or have they realised that what you do IS their business?

You need to think about what is wrong and what you want to do, you'll find that an investment bank and Netflix have more in common than Netflix and a small startup, and it's possible to do a lot of cool/worthwhile work in an "enterprise".



As regards getting the skills/knowledge, you've started to answer it yourself. As a hiring manager I want a developer to be bettering themselves, which these days usually means in your own time.



Find an open source project with the toolset/skills you want and get involved. Also download the technologies (you can get just about all legitimately for free these days), and publish code on guthub etc, then you have examples to show. Again this is common from investment banks to startups. It's one thing to talk about hobby projects, another to show them code they can review and ask you about.



You can make the move if you are committed and can show you can cut it. I've gone from




interactive media-> web-> middleware-> database-> high availability-> architecture-> management




in my time, and I've learned how to do it by getting involved in projects/technology/processes I've found interesting.



I'm now a senior manager who beat all my devs in a tech check test.






share|improve this answer


















  • 2




    I'm now a senior manager who beat all my devs in a tech check test. Troll (can't help myself): your devs must be really bad.. +1 for the exemplary answer though
    – Luceos
    Apr 24 '15 at 12:58







  • 2




    @Luceos - Well I hope not, they get a good meaty code example to get an interview, lots of whiteboarding at interview, and we do TDD and peer code reviews as part of a commit (and our office has the lowest bug count/technical debt in the company), but cheers for the +1 ;)
    – The Wandering Dev Manager
    Apr 24 '15 at 13:01







  • 1




    good answer. I was the only one to get 100% on our tech test too. But I did write it.
    – blankip
    Apr 25 '15 at 15:19

















up vote
2
down vote













This got a little longwinded, sorry. I found your question because of the same issues, but I'd like to first comment on your idea that your first job defines your career.



I used to worry about the same thing. I went to school for mechanical engineering, got a job as a test engineer in an R&D program. It was pretty cool at times, but I could take it or leave it. I did this for 3 years and decided I wanted to try something in the construction industry, so I applied for (and was hired) at a utility company as a project engineer, running several projects involving equipment and system replacements and upgrades. This involved preparing bid documents, selecting a contractor, overseeing their work, overseeing the design of the system if a new design was required, etc. I did that for a year and hated it, so I went back to my test engineering job.



During my second time at the test engineering job, I used excel alot, crunching tons of data. I ended up fiddling around with macros and eventually wrote something that automated alot of repetitive stuff I would do manually all the time. When I had to change something, it was a mess of a time because I obviously wrote horrendous code. But this sparked an interested. Every time I got stuck trying to make a change that seemed like it should be simple, I thought how can I make this easier. Through googling around I started discovering coding techniques, like not hardcoding things lol. You have to start somewhere right?



Eventually I got so interested in programming that I started taking classes in CS. I took an intro class, then another one covering object oriented concepts, both with java. I took data structures and algorithms, and a class in C. At this point I decided to go to the career fair at my engineering alma mater and show people what I've been doing, get their opinion on whether I was on the right track for a career change, etc. Well I ended up getting a programming job out of the whole thing.



I was so excited about my career change. I loved solving programming problems and it's the first time I can say I really had fun doing school work. Fast forward two years and I'm trying to hang on to that passion as hard as I can, because my job is sucking it all away. I'm in a small development group at a huge company that writes/supports corporate applications (internal software/systems that the business uses to do their jobs). They use Oracle e-business suite among other things, with alot of customization. Our documentation is horrendous. Unit test documents are outdated and don't explain how to run a process through the user interface. I still love programming and solving programming problems, but I feel like all I do here is wrestle with poor documentation and trying to figure out uncommented spaghetti code with 500 line sql queries, and trying to figure out how to run a simple process in oracle.



In summary, I would say that your first job does not define anything. If you want something bad enough, just go get it. That's really all there is to it. Now, if you want to make a switch from an accountant to a heart surgeon, well sure there's alot more to consider there. But for most types of career/job changes, it's not as bad as it may seem at the time. It does require hard work. But if you don't want to do that hard work, that's proof enough that you aren't that interested and keep looking. Which brings me to my next point. Don't settle. It gets frustrating feeling stuck, and it can sound like an easy solution to just accept it and stay put. But keep searching for what really fires you up. You can program anything, but for me, I need to really feel excited about the product or service I'm creating. I think to find fulfilling programming work as you asked, you need to determine what you're really interested in, then see what tools/knowledge/skills you need to be able to get a programming job in that industry.






share|improve this answer



























    up vote
    2
    down vote














    I don't want to do glue and screw code anymore. I want to make the stuff that others glue and screw




    The glueing and screwing is not binary. There are layers upon layers of people putting components together. Right at the bottom are probably hardware engineers, then there is the OS, libraries, libraries using them, libraries using them, more libraries and somewhere all up there are you, putting the upper level libraries together to have something for your customer. So it's not just component makers and component users, it's lots of layers.



    According to your post, you are on the upmost layer. You are using components without making others, but directly delivering value to a customer.



    If you were to interview for a position of component making and I were to interview you, I would expect you to already be at the lowest layer of component building in your company (or cannot get there for reasons you explain).



    Every company of some size will build components of their own for their own developers so they don't have to do all that boring stuff all over again and again. You want to be the guy doing this, because it's less boring than the layer on top and it gets you closer to the layer below, even if that is in another company.






    share|improve this answer



















      protected by Community♦ Apr 25 '15 at 0:18



      Thank you for your interest in this question.
      Because it has attracted low-quality or spam answers that had to be removed, posting an answer now requires 10 reputation on this site (the association bonus does not count).



      Would you like to answer one of these unanswered questions instead?














      3 Answers
      3






      active

      oldest

      votes








      3 Answers
      3






      active

      oldest

      votes









      active

      oldest

      votes






      active

      oldest

      votes








      up vote
      18
      down vote



      accepted










      I think you need to think about what is "wrong" with "enterprise development" and where you want to go/what you want to do.



      As I see it there are 4 areas that you may be wanting to change




      • Technology - In the enterprise are you doing .Net/Java/C++? Are you wanting to do something like RoR/Python/Clojure etc. All these are used in both non-enterprise/enterprise situations. You are as likely to use Python in an investment bank as at a startup these days.


      • Projects - Is it the type of work? You may be doing CRUD apps onto a database, but you could just as easily be building high performance multi threaded realtime systems passing data into Hadoop clusters and delivering via continuous delivery multiple times a day.


      • Process - Are you doing some death march where you spend 6 months on a functional spec to spend 4 weeks writing something unrelated, or are you expediting stories via Kanban and getting instant feedback from the business as you commit code?


      • Company - Are you in a company that development is non-core to the business, or have they realised that what you do IS their business?

      You need to think about what is wrong and what you want to do, you'll find that an investment bank and Netflix have more in common than Netflix and a small startup, and it's possible to do a lot of cool/worthwhile work in an "enterprise".



      As regards getting the skills/knowledge, you've started to answer it yourself. As a hiring manager I want a developer to be bettering themselves, which these days usually means in your own time.



      Find an open source project with the toolset/skills you want and get involved. Also download the technologies (you can get just about all legitimately for free these days), and publish code on guthub etc, then you have examples to show. Again this is common from investment banks to startups. It's one thing to talk about hobby projects, another to show them code they can review and ask you about.



      You can make the move if you are committed and can show you can cut it. I've gone from




      interactive media-> web-> middleware-> database-> high availability-> architecture-> management




      in my time, and I've learned how to do it by getting involved in projects/technology/processes I've found interesting.



      I'm now a senior manager who beat all my devs in a tech check test.






      share|improve this answer


















      • 2




        I'm now a senior manager who beat all my devs in a tech check test. Troll (can't help myself): your devs must be really bad.. +1 for the exemplary answer though
        – Luceos
        Apr 24 '15 at 12:58







      • 2




        @Luceos - Well I hope not, they get a good meaty code example to get an interview, lots of whiteboarding at interview, and we do TDD and peer code reviews as part of a commit (and our office has the lowest bug count/technical debt in the company), but cheers for the +1 ;)
        – The Wandering Dev Manager
        Apr 24 '15 at 13:01







      • 1




        good answer. I was the only one to get 100% on our tech test too. But I did write it.
        – blankip
        Apr 25 '15 at 15:19














      up vote
      18
      down vote



      accepted










      I think you need to think about what is "wrong" with "enterprise development" and where you want to go/what you want to do.



      As I see it there are 4 areas that you may be wanting to change




      • Technology - In the enterprise are you doing .Net/Java/C++? Are you wanting to do something like RoR/Python/Clojure etc. All these are used in both non-enterprise/enterprise situations. You are as likely to use Python in an investment bank as at a startup these days.


      • Projects - Is it the type of work? You may be doing CRUD apps onto a database, but you could just as easily be building high performance multi threaded realtime systems passing data into Hadoop clusters and delivering via continuous delivery multiple times a day.


      • Process - Are you doing some death march where you spend 6 months on a functional spec to spend 4 weeks writing something unrelated, or are you expediting stories via Kanban and getting instant feedback from the business as you commit code?


      • Company - Are you in a company that development is non-core to the business, or have they realised that what you do IS their business?

      You need to think about what is wrong and what you want to do, you'll find that an investment bank and Netflix have more in common than Netflix and a small startup, and it's possible to do a lot of cool/worthwhile work in an "enterprise".



      As regards getting the skills/knowledge, you've started to answer it yourself. As a hiring manager I want a developer to be bettering themselves, which these days usually means in your own time.



      Find an open source project with the toolset/skills you want and get involved. Also download the technologies (you can get just about all legitimately for free these days), and publish code on guthub etc, then you have examples to show. Again this is common from investment banks to startups. It's one thing to talk about hobby projects, another to show them code they can review and ask you about.



      You can make the move if you are committed and can show you can cut it. I've gone from




      interactive media-> web-> middleware-> database-> high availability-> architecture-> management




      in my time, and I've learned how to do it by getting involved in projects/technology/processes I've found interesting.



      I'm now a senior manager who beat all my devs in a tech check test.






      share|improve this answer


















      • 2




        I'm now a senior manager who beat all my devs in a tech check test. Troll (can't help myself): your devs must be really bad.. +1 for the exemplary answer though
        – Luceos
        Apr 24 '15 at 12:58







      • 2




        @Luceos - Well I hope not, they get a good meaty code example to get an interview, lots of whiteboarding at interview, and we do TDD and peer code reviews as part of a commit (and our office has the lowest bug count/technical debt in the company), but cheers for the +1 ;)
        – The Wandering Dev Manager
        Apr 24 '15 at 13:01







      • 1




        good answer. I was the only one to get 100% on our tech test too. But I did write it.
        – blankip
        Apr 25 '15 at 15:19












      up vote
      18
      down vote



      accepted







      up vote
      18
      down vote



      accepted






      I think you need to think about what is "wrong" with "enterprise development" and where you want to go/what you want to do.



      As I see it there are 4 areas that you may be wanting to change




      • Technology - In the enterprise are you doing .Net/Java/C++? Are you wanting to do something like RoR/Python/Clojure etc. All these are used in both non-enterprise/enterprise situations. You are as likely to use Python in an investment bank as at a startup these days.


      • Projects - Is it the type of work? You may be doing CRUD apps onto a database, but you could just as easily be building high performance multi threaded realtime systems passing data into Hadoop clusters and delivering via continuous delivery multiple times a day.


      • Process - Are you doing some death march where you spend 6 months on a functional spec to spend 4 weeks writing something unrelated, or are you expediting stories via Kanban and getting instant feedback from the business as you commit code?


      • Company - Are you in a company that development is non-core to the business, or have they realised that what you do IS their business?

      You need to think about what is wrong and what you want to do, you'll find that an investment bank and Netflix have more in common than Netflix and a small startup, and it's possible to do a lot of cool/worthwhile work in an "enterprise".



      As regards getting the skills/knowledge, you've started to answer it yourself. As a hiring manager I want a developer to be bettering themselves, which these days usually means in your own time.



      Find an open source project with the toolset/skills you want and get involved. Also download the technologies (you can get just about all legitimately for free these days), and publish code on guthub etc, then you have examples to show. Again this is common from investment banks to startups. It's one thing to talk about hobby projects, another to show them code they can review and ask you about.



      You can make the move if you are committed and can show you can cut it. I've gone from




      interactive media-> web-> middleware-> database-> high availability-> architecture-> management




      in my time, and I've learned how to do it by getting involved in projects/technology/processes I've found interesting.



      I'm now a senior manager who beat all my devs in a tech check test.






      share|improve this answer














      I think you need to think about what is "wrong" with "enterprise development" and where you want to go/what you want to do.



      As I see it there are 4 areas that you may be wanting to change




      • Technology - In the enterprise are you doing .Net/Java/C++? Are you wanting to do something like RoR/Python/Clojure etc. All these are used in both non-enterprise/enterprise situations. You are as likely to use Python in an investment bank as at a startup these days.


      • Projects - Is it the type of work? You may be doing CRUD apps onto a database, but you could just as easily be building high performance multi threaded realtime systems passing data into Hadoop clusters and delivering via continuous delivery multiple times a day.


      • Process - Are you doing some death march where you spend 6 months on a functional spec to spend 4 weeks writing something unrelated, or are you expediting stories via Kanban and getting instant feedback from the business as you commit code?


      • Company - Are you in a company that development is non-core to the business, or have they realised that what you do IS their business?

      You need to think about what is wrong and what you want to do, you'll find that an investment bank and Netflix have more in common than Netflix and a small startup, and it's possible to do a lot of cool/worthwhile work in an "enterprise".



      As regards getting the skills/knowledge, you've started to answer it yourself. As a hiring manager I want a developer to be bettering themselves, which these days usually means in your own time.



      Find an open source project with the toolset/skills you want and get involved. Also download the technologies (you can get just about all legitimately for free these days), and publish code on guthub etc, then you have examples to show. Again this is common from investment banks to startups. It's one thing to talk about hobby projects, another to show them code they can review and ask you about.



      You can make the move if you are committed and can show you can cut it. I've gone from




      interactive media-> web-> middleware-> database-> high availability-> architecture-> management




      in my time, and I've learned how to do it by getting involved in projects/technology/processes I've found interesting.



      I'm now a senior manager who beat all my devs in a tech check test.







      share|improve this answer














      share|improve this answer



      share|improve this answer








      edited Apr 24 '15 at 13:43

























      answered Apr 24 '15 at 11:53









      The Wandering Dev Manager

      29.8k956107




      29.8k956107







      • 2




        I'm now a senior manager who beat all my devs in a tech check test. Troll (can't help myself): your devs must be really bad.. +1 for the exemplary answer though
        – Luceos
        Apr 24 '15 at 12:58







      • 2




        @Luceos - Well I hope not, they get a good meaty code example to get an interview, lots of whiteboarding at interview, and we do TDD and peer code reviews as part of a commit (and our office has the lowest bug count/technical debt in the company), but cheers for the +1 ;)
        – The Wandering Dev Manager
        Apr 24 '15 at 13:01







      • 1




        good answer. I was the only one to get 100% on our tech test too. But I did write it.
        – blankip
        Apr 25 '15 at 15:19












      • 2




        I'm now a senior manager who beat all my devs in a tech check test. Troll (can't help myself): your devs must be really bad.. +1 for the exemplary answer though
        – Luceos
        Apr 24 '15 at 12:58







      • 2




        @Luceos - Well I hope not, they get a good meaty code example to get an interview, lots of whiteboarding at interview, and we do TDD and peer code reviews as part of a commit (and our office has the lowest bug count/technical debt in the company), but cheers for the +1 ;)
        – The Wandering Dev Manager
        Apr 24 '15 at 13:01







      • 1




        good answer. I was the only one to get 100% on our tech test too. But I did write it.
        – blankip
        Apr 25 '15 at 15:19







      2




      2




      I'm now a senior manager who beat all my devs in a tech check test. Troll (can't help myself): your devs must be really bad.. +1 for the exemplary answer though
      – Luceos
      Apr 24 '15 at 12:58





      I'm now a senior manager who beat all my devs in a tech check test. Troll (can't help myself): your devs must be really bad.. +1 for the exemplary answer though
      – Luceos
      Apr 24 '15 at 12:58





      2




      2




      @Luceos - Well I hope not, they get a good meaty code example to get an interview, lots of whiteboarding at interview, and we do TDD and peer code reviews as part of a commit (and our office has the lowest bug count/technical debt in the company), but cheers for the +1 ;)
      – The Wandering Dev Manager
      Apr 24 '15 at 13:01





      @Luceos - Well I hope not, they get a good meaty code example to get an interview, lots of whiteboarding at interview, and we do TDD and peer code reviews as part of a commit (and our office has the lowest bug count/technical debt in the company), but cheers for the +1 ;)
      – The Wandering Dev Manager
      Apr 24 '15 at 13:01





      1




      1




      good answer. I was the only one to get 100% on our tech test too. But I did write it.
      – blankip
      Apr 25 '15 at 15:19




      good answer. I was the only one to get 100% on our tech test too. But I did write it.
      – blankip
      Apr 25 '15 at 15:19












      up vote
      2
      down vote













      This got a little longwinded, sorry. I found your question because of the same issues, but I'd like to first comment on your idea that your first job defines your career.



      I used to worry about the same thing. I went to school for mechanical engineering, got a job as a test engineer in an R&D program. It was pretty cool at times, but I could take it or leave it. I did this for 3 years and decided I wanted to try something in the construction industry, so I applied for (and was hired) at a utility company as a project engineer, running several projects involving equipment and system replacements and upgrades. This involved preparing bid documents, selecting a contractor, overseeing their work, overseeing the design of the system if a new design was required, etc. I did that for a year and hated it, so I went back to my test engineering job.



      During my second time at the test engineering job, I used excel alot, crunching tons of data. I ended up fiddling around with macros and eventually wrote something that automated alot of repetitive stuff I would do manually all the time. When I had to change something, it was a mess of a time because I obviously wrote horrendous code. But this sparked an interested. Every time I got stuck trying to make a change that seemed like it should be simple, I thought how can I make this easier. Through googling around I started discovering coding techniques, like not hardcoding things lol. You have to start somewhere right?



      Eventually I got so interested in programming that I started taking classes in CS. I took an intro class, then another one covering object oriented concepts, both with java. I took data structures and algorithms, and a class in C. At this point I decided to go to the career fair at my engineering alma mater and show people what I've been doing, get their opinion on whether I was on the right track for a career change, etc. Well I ended up getting a programming job out of the whole thing.



      I was so excited about my career change. I loved solving programming problems and it's the first time I can say I really had fun doing school work. Fast forward two years and I'm trying to hang on to that passion as hard as I can, because my job is sucking it all away. I'm in a small development group at a huge company that writes/supports corporate applications (internal software/systems that the business uses to do their jobs). They use Oracle e-business suite among other things, with alot of customization. Our documentation is horrendous. Unit test documents are outdated and don't explain how to run a process through the user interface. I still love programming and solving programming problems, but I feel like all I do here is wrestle with poor documentation and trying to figure out uncommented spaghetti code with 500 line sql queries, and trying to figure out how to run a simple process in oracle.



      In summary, I would say that your first job does not define anything. If you want something bad enough, just go get it. That's really all there is to it. Now, if you want to make a switch from an accountant to a heart surgeon, well sure there's alot more to consider there. But for most types of career/job changes, it's not as bad as it may seem at the time. It does require hard work. But if you don't want to do that hard work, that's proof enough that you aren't that interested and keep looking. Which brings me to my next point. Don't settle. It gets frustrating feeling stuck, and it can sound like an easy solution to just accept it and stay put. But keep searching for what really fires you up. You can program anything, but for me, I need to really feel excited about the product or service I'm creating. I think to find fulfilling programming work as you asked, you need to determine what you're really interested in, then see what tools/knowledge/skills you need to be able to get a programming job in that industry.






      share|improve this answer
























        up vote
        2
        down vote













        This got a little longwinded, sorry. I found your question because of the same issues, but I'd like to first comment on your idea that your first job defines your career.



        I used to worry about the same thing. I went to school for mechanical engineering, got a job as a test engineer in an R&D program. It was pretty cool at times, but I could take it or leave it. I did this for 3 years and decided I wanted to try something in the construction industry, so I applied for (and was hired) at a utility company as a project engineer, running several projects involving equipment and system replacements and upgrades. This involved preparing bid documents, selecting a contractor, overseeing their work, overseeing the design of the system if a new design was required, etc. I did that for a year and hated it, so I went back to my test engineering job.



        During my second time at the test engineering job, I used excel alot, crunching tons of data. I ended up fiddling around with macros and eventually wrote something that automated alot of repetitive stuff I would do manually all the time. When I had to change something, it was a mess of a time because I obviously wrote horrendous code. But this sparked an interested. Every time I got stuck trying to make a change that seemed like it should be simple, I thought how can I make this easier. Through googling around I started discovering coding techniques, like not hardcoding things lol. You have to start somewhere right?



        Eventually I got so interested in programming that I started taking classes in CS. I took an intro class, then another one covering object oriented concepts, both with java. I took data structures and algorithms, and a class in C. At this point I decided to go to the career fair at my engineering alma mater and show people what I've been doing, get their opinion on whether I was on the right track for a career change, etc. Well I ended up getting a programming job out of the whole thing.



        I was so excited about my career change. I loved solving programming problems and it's the first time I can say I really had fun doing school work. Fast forward two years and I'm trying to hang on to that passion as hard as I can, because my job is sucking it all away. I'm in a small development group at a huge company that writes/supports corporate applications (internal software/systems that the business uses to do their jobs). They use Oracle e-business suite among other things, with alot of customization. Our documentation is horrendous. Unit test documents are outdated and don't explain how to run a process through the user interface. I still love programming and solving programming problems, but I feel like all I do here is wrestle with poor documentation and trying to figure out uncommented spaghetti code with 500 line sql queries, and trying to figure out how to run a simple process in oracle.



        In summary, I would say that your first job does not define anything. If you want something bad enough, just go get it. That's really all there is to it. Now, if you want to make a switch from an accountant to a heart surgeon, well sure there's alot more to consider there. But for most types of career/job changes, it's not as bad as it may seem at the time. It does require hard work. But if you don't want to do that hard work, that's proof enough that you aren't that interested and keep looking. Which brings me to my next point. Don't settle. It gets frustrating feeling stuck, and it can sound like an easy solution to just accept it and stay put. But keep searching for what really fires you up. You can program anything, but for me, I need to really feel excited about the product or service I'm creating. I think to find fulfilling programming work as you asked, you need to determine what you're really interested in, then see what tools/knowledge/skills you need to be able to get a programming job in that industry.






        share|improve this answer






















          up vote
          2
          down vote










          up vote
          2
          down vote









          This got a little longwinded, sorry. I found your question because of the same issues, but I'd like to first comment on your idea that your first job defines your career.



          I used to worry about the same thing. I went to school for mechanical engineering, got a job as a test engineer in an R&D program. It was pretty cool at times, but I could take it or leave it. I did this for 3 years and decided I wanted to try something in the construction industry, so I applied for (and was hired) at a utility company as a project engineer, running several projects involving equipment and system replacements and upgrades. This involved preparing bid documents, selecting a contractor, overseeing their work, overseeing the design of the system if a new design was required, etc. I did that for a year and hated it, so I went back to my test engineering job.



          During my second time at the test engineering job, I used excel alot, crunching tons of data. I ended up fiddling around with macros and eventually wrote something that automated alot of repetitive stuff I would do manually all the time. When I had to change something, it was a mess of a time because I obviously wrote horrendous code. But this sparked an interested. Every time I got stuck trying to make a change that seemed like it should be simple, I thought how can I make this easier. Through googling around I started discovering coding techniques, like not hardcoding things lol. You have to start somewhere right?



          Eventually I got so interested in programming that I started taking classes in CS. I took an intro class, then another one covering object oriented concepts, both with java. I took data structures and algorithms, and a class in C. At this point I decided to go to the career fair at my engineering alma mater and show people what I've been doing, get their opinion on whether I was on the right track for a career change, etc. Well I ended up getting a programming job out of the whole thing.



          I was so excited about my career change. I loved solving programming problems and it's the first time I can say I really had fun doing school work. Fast forward two years and I'm trying to hang on to that passion as hard as I can, because my job is sucking it all away. I'm in a small development group at a huge company that writes/supports corporate applications (internal software/systems that the business uses to do their jobs). They use Oracle e-business suite among other things, with alot of customization. Our documentation is horrendous. Unit test documents are outdated and don't explain how to run a process through the user interface. I still love programming and solving programming problems, but I feel like all I do here is wrestle with poor documentation and trying to figure out uncommented spaghetti code with 500 line sql queries, and trying to figure out how to run a simple process in oracle.



          In summary, I would say that your first job does not define anything. If you want something bad enough, just go get it. That's really all there is to it. Now, if you want to make a switch from an accountant to a heart surgeon, well sure there's alot more to consider there. But for most types of career/job changes, it's not as bad as it may seem at the time. It does require hard work. But if you don't want to do that hard work, that's proof enough that you aren't that interested and keep looking. Which brings me to my next point. Don't settle. It gets frustrating feeling stuck, and it can sound like an easy solution to just accept it and stay put. But keep searching for what really fires you up. You can program anything, but for me, I need to really feel excited about the product or service I'm creating. I think to find fulfilling programming work as you asked, you need to determine what you're really interested in, then see what tools/knowledge/skills you need to be able to get a programming job in that industry.






          share|improve this answer












          This got a little longwinded, sorry. I found your question because of the same issues, but I'd like to first comment on your idea that your first job defines your career.



          I used to worry about the same thing. I went to school for mechanical engineering, got a job as a test engineer in an R&D program. It was pretty cool at times, but I could take it or leave it. I did this for 3 years and decided I wanted to try something in the construction industry, so I applied for (and was hired) at a utility company as a project engineer, running several projects involving equipment and system replacements and upgrades. This involved preparing bid documents, selecting a contractor, overseeing their work, overseeing the design of the system if a new design was required, etc. I did that for a year and hated it, so I went back to my test engineering job.



          During my second time at the test engineering job, I used excel alot, crunching tons of data. I ended up fiddling around with macros and eventually wrote something that automated alot of repetitive stuff I would do manually all the time. When I had to change something, it was a mess of a time because I obviously wrote horrendous code. But this sparked an interested. Every time I got stuck trying to make a change that seemed like it should be simple, I thought how can I make this easier. Through googling around I started discovering coding techniques, like not hardcoding things lol. You have to start somewhere right?



          Eventually I got so interested in programming that I started taking classes in CS. I took an intro class, then another one covering object oriented concepts, both with java. I took data structures and algorithms, and a class in C. At this point I decided to go to the career fair at my engineering alma mater and show people what I've been doing, get their opinion on whether I was on the right track for a career change, etc. Well I ended up getting a programming job out of the whole thing.



          I was so excited about my career change. I loved solving programming problems and it's the first time I can say I really had fun doing school work. Fast forward two years and I'm trying to hang on to that passion as hard as I can, because my job is sucking it all away. I'm in a small development group at a huge company that writes/supports corporate applications (internal software/systems that the business uses to do their jobs). They use Oracle e-business suite among other things, with alot of customization. Our documentation is horrendous. Unit test documents are outdated and don't explain how to run a process through the user interface. I still love programming and solving programming problems, but I feel like all I do here is wrestle with poor documentation and trying to figure out uncommented spaghetti code with 500 line sql queries, and trying to figure out how to run a simple process in oracle.



          In summary, I would say that your first job does not define anything. If you want something bad enough, just go get it. That's really all there is to it. Now, if you want to make a switch from an accountant to a heart surgeon, well sure there's alot more to consider there. But for most types of career/job changes, it's not as bad as it may seem at the time. It does require hard work. But if you don't want to do that hard work, that's proof enough that you aren't that interested and keep looking. Which brings me to my next point. Don't settle. It gets frustrating feeling stuck, and it can sound like an easy solution to just accept it and stay put. But keep searching for what really fires you up. You can program anything, but for me, I need to really feel excited about the product or service I'm creating. I think to find fulfilling programming work as you asked, you need to determine what you're really interested in, then see what tools/knowledge/skills you need to be able to get a programming job in that industry.







          share|improve this answer












          share|improve this answer



          share|improve this answer










          answered Apr 25 '15 at 0:18









          yankees13

          141210




          141210




















              up vote
              2
              down vote














              I don't want to do glue and screw code anymore. I want to make the stuff that others glue and screw




              The glueing and screwing is not binary. There are layers upon layers of people putting components together. Right at the bottom are probably hardware engineers, then there is the OS, libraries, libraries using them, libraries using them, more libraries and somewhere all up there are you, putting the upper level libraries together to have something for your customer. So it's not just component makers and component users, it's lots of layers.



              According to your post, you are on the upmost layer. You are using components without making others, but directly delivering value to a customer.



              If you were to interview for a position of component making and I were to interview you, I would expect you to already be at the lowest layer of component building in your company (or cannot get there for reasons you explain).



              Every company of some size will build components of their own for their own developers so they don't have to do all that boring stuff all over again and again. You want to be the guy doing this, because it's less boring than the layer on top and it gets you closer to the layer below, even if that is in another company.






              share|improve this answer
























                up vote
                2
                down vote














                I don't want to do glue and screw code anymore. I want to make the stuff that others glue and screw




                The glueing and screwing is not binary. There are layers upon layers of people putting components together. Right at the bottom are probably hardware engineers, then there is the OS, libraries, libraries using them, libraries using them, more libraries and somewhere all up there are you, putting the upper level libraries together to have something for your customer. So it's not just component makers and component users, it's lots of layers.



                According to your post, you are on the upmost layer. You are using components without making others, but directly delivering value to a customer.



                If you were to interview for a position of component making and I were to interview you, I would expect you to already be at the lowest layer of component building in your company (or cannot get there for reasons you explain).



                Every company of some size will build components of their own for their own developers so they don't have to do all that boring stuff all over again and again. You want to be the guy doing this, because it's less boring than the layer on top and it gets you closer to the layer below, even if that is in another company.






                share|improve this answer






















                  up vote
                  2
                  down vote










                  up vote
                  2
                  down vote










                  I don't want to do glue and screw code anymore. I want to make the stuff that others glue and screw




                  The glueing and screwing is not binary. There are layers upon layers of people putting components together. Right at the bottom are probably hardware engineers, then there is the OS, libraries, libraries using them, libraries using them, more libraries and somewhere all up there are you, putting the upper level libraries together to have something for your customer. So it's not just component makers and component users, it's lots of layers.



                  According to your post, you are on the upmost layer. You are using components without making others, but directly delivering value to a customer.



                  If you were to interview for a position of component making and I were to interview you, I would expect you to already be at the lowest layer of component building in your company (or cannot get there for reasons you explain).



                  Every company of some size will build components of their own for their own developers so they don't have to do all that boring stuff all over again and again. You want to be the guy doing this, because it's less boring than the layer on top and it gets you closer to the layer below, even if that is in another company.






                  share|improve this answer













                  I don't want to do glue and screw code anymore. I want to make the stuff that others glue and screw




                  The glueing and screwing is not binary. There are layers upon layers of people putting components together. Right at the bottom are probably hardware engineers, then there is the OS, libraries, libraries using them, libraries using them, more libraries and somewhere all up there are you, putting the upper level libraries together to have something for your customer. So it's not just component makers and component users, it's lots of layers.



                  According to your post, you are on the upmost layer. You are using components without making others, but directly delivering value to a customer.



                  If you were to interview for a position of component making and I were to interview you, I would expect you to already be at the lowest layer of component building in your company (or cannot get there for reasons you explain).



                  Every company of some size will build components of their own for their own developers so they don't have to do all that boring stuff all over again and again. You want to be the guy doing this, because it's less boring than the layer on top and it gets you closer to the layer below, even if that is in another company.







                  share|improve this answer












                  share|improve this answer



                  share|improve this answer










                  answered Apr 25 '15 at 10:26









                  nvoigt

                  42.6k18105147




                  42.6k18105147















                      protected by Community♦ Apr 25 '15 at 0:18



                      Thank you for your interest in this question.
                      Because it has attracted low-quality or spam answers that had to be removed, posting an answer now requires 10 reputation on this site (the association bonus does not count).



                      Would you like to answer one of these unanswered questions instead?


                      Comments

                      Popular posts from this blog

                      Long meetings (6-7 hours a day): Being “babysat” by supervisor

                      Is the Concept of Multiple Fantasy Races Scientifically Flawed? [closed]

                      Confectionery