• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Liutauras Vilda
  • Jeanne Boyarsky
  • Devaka Cooray
  • Paul Clapham
Sheriffs:
  • Tim Cooke
  • Knute Snortum
  • Bear Bibeault
Saloon Keepers:
  • Ron McLeod
  • Tim Moores
  • Stephan van Hulst
  • Piet Souris
  • Ganesh Patekar
Bartenders:
  • Frits Walraven
  • Carey Brown
  • Tim Holloway

Suggestions/Ideas for Derailed Career

 
Ranch Hand
Posts: 55
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I have been involved in software development and support for 18 years. Most of that time has been with PowerBuilder in a support role (tweaks to code, bug fixes and light to moderate enhancements). I did participate in one full life-cycle development project back in 1999/2000 for the Dept. of Justice in DC. I have experience interacting with Oracle database schemas in this same context.

I'm currently working for a financial company who has apparently decided it's time for me to move on. I know this situation is difficult to be 100% certain about what is going on and subjectivity can play a large role but things are being done that don't add up any other way. I came to the company in 2001 with the understanding they would be training me to transition from PowerBuilder to Java development within my first year of employment. This was stated in my interviews (I had two) when I accepted the job. From that point forward, I would bring up the Java development in my annual reviews and I was always told the company was still deciding things and for the time being I should just continue in my PowerBuilder support role. There was plenty of that to do and I was happy in my environment so I trusted them. Over time, my work in PowerBuilder dried up and I was given other types of work, still in an IT support capacity (for example handling FTP setups with vendors).

In 2008 at our annual IT Initiatives meeting, one of the VP's stood before all of us and announced the company was beginning a project that year to move all applications over to Java. She specifically stated that all of us working with PowerBuilder or Visual Basic should not worry...that training would be provided. Then the economy tanked as we all know.

Three years later, in 2011 I was finally sent to an introductory 5-day seminar for Java. It was one of those sessions that companies send their people to (like Learning Tree for example). You sit and listen to some guy walk through a PowerPoint presentation reading the bullets on each slide. It's not really training...more like an overview and in my opinion a complete waste of time and money. I read the "Head First Java" book afterwards and got much more out of that then the seminar provided. After completing this "training" I was not given any assignments for the next 2-1/2 years.

Then in July of last year (2013) I was informed I was going to yet another training seminar (this one was 4-days) and upon my return I would be given a Java assignment. The course was for intermediate level Java programmers and focused primarily on JSP and servlets. The assignment I was given was to parse a 3 gig + XML file using a StAX parser. A contractor had already developed a set of methods that parsed some of the data in the file using extensive hard-coding. They wanted me to develop an approach that would make the Java process data-driven. I would be doing this in a Weblogic11g environment using Eclipse.

Now, all of this was pretty much brand new to me. I was surprised they were basically throwing me into the deep end of the pool. I was not given any real resources except to be able to ask other developers in the company questions and watch videos on Lynda.com (which there are not many of for Java). So in order to meet the deadline I told them I would have to extend the existing code because there was too much for me to learn and get on top of to deliver the data-driven approach. In February of this year I had my annual review. It was rated less then satisfactory primarily because I was not able to complete the Java project as originally requested and being a few days late with some of the unit testing during the end-of-year holidays. I was characterized as, "having difficulty understanding Java concepts". They still want me to work on this project but I have not had any more new code to write since January 1st and have been given a lot of other work to do that has nothing to do with Java development.

At this point, I can feel the scrutiny being applied to every thing I do. The atmosphere is thick with tension and some people are beginning to avoid me. It's a lot like a Twilight Zone episode to be honest.

Any thoughts and suggestions on what I can do to salvage my career? I don't think staying at this company is healthy but know I will need experience to move on to another more suitable company if I want to do Java development. I would like to try and leverage the experience I do have if possible.
 
Ranch Hand
Posts: 69
Java
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
hi Sterling,

Looks like you have waited too long to see if something will happen in your career development towards Java. Did you try any certification during this time ? Or anything voluntary with Java development ? Anyway,now, finally you have a Java opportunity. Just try to understand what you will need to get that done. Take any trainings (outside of your office), or learn by yourself by putting some extra hours. See if you can do a sample prototype for your project first. Identify the areas which you have difficulty and see if you can get some help there. Through the other Java forums we have in Ranch and so many other resources in the net. Give it your best shot, whatever the outcome may.

These are just a few thoughts I have, others in the forum will have a lot more.

Thanks,
Anila.
 
author
Posts: 23834
140
jQuery Eclipse IDE Firefox Browser VI Editor C++ Chrome Java Linux Windows
  • Likes 1
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator

Sterling Crapser wrote:
In 2008 at our annual IT Initiatives meeting, one of the VP's stood before all of us and announced the company was beginning a project that year to move all applications over to Java. She specifically stated that all of us working with PowerBuilder or Visual Basic should not worry...that training would be provided. Then the economy tanked as we all know.

Three years later, in 2011 I was finally sent to an introductory 5-day seminar for Java. It was one of those sessions that companies send their people to (like Learning Tree for example). You sit and listen to some guy walk through a PowerPoint presentation reading the bullets on each slide. It's not really training...more like an overview and in my opinion a complete waste of time and money. I read the "Head First Java" book afterwards and got much more out of that then the seminar provided. After completing this "training" I was not given any assignments for the next 2-1/2 years.

Then in July of last year (2013) I was informed I was going to yet another training seminar (this one was 4-days) and upon my return I would be given a Java assignment. The course was for intermediate level Java programmers and focused primarily on JSP and servlets. The assignment I was given was to parse a 3 gig + XML file using a StAX parser. A contractor had already developed a set of methods that parsed some of the data in the file using extensive hard-coding. They wanted me to develop an approach that would make the Java process data-driven. I would be doing this in a Weblogic11g environment using Eclipse.

Now, all of this was pretty much brand new to me. I was surprised they were basically throwing me into the deep end of the pool. I was not given any real resources except to be able to ask other developers in the company questions and watch videos on Lynda.com (which there are not many of for Java). So in order to meet the deadline I told them I would have to extend the existing code because there was too much for me to learn and get on top of to deliver the data-driven approach. In February of this year I had my annual review. It was rated less then satisfactory primarily because I was not able to complete the Java project as originally requested and being a few days late with some of the unit testing during the end-of-year holidays. I was characterized as, "having difficulty understanding Java concepts". They still want me to work on this project but I have not had any more new code to write since January 1st and have been given a lot of other work to do that has nothing to do with Java development.



Hate to point out the obvious... while I agree that they did throw you into the deep end of the pool, you did have five years of warning. Not all training should be expected to be provided by the company. In fact, based on the last few companies that I worked for (present company actually excluded), training was so rare (especially instructor led training) that I treated it as something precious -- not to be wasted. I went in prepared, grilled the instructor as much as I could, etc... Anyway, this is why companies uses terms like "self-starter", "go-getter". etc. Managers rarely gives head-up on anything -- and certainly not five years worth.

As for salvaging your career, in my very humble (and possibly wrong) opinion ... I think that should not be your focus. Your focus should be salvaging the project. Go over everything until you understand everything. Refactor everything that you feel could be done better. Fix any bugs that are reported (or even not reported), no matter how small. Ask you users what they would like changed -- and changed them if possible. Etc. You should be the champion for the project -- and not just an engineer that management has to push to make deadlines.

If you can save the project, I would guess that management may see you in a different light. And if they don't, then you have lots of experience rescuing a project -- which is good experience to have.

Henry
 
Rancher
Posts: 2759
32
Eclipse IDE Spring Tomcat Server
  • Likes 1
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Yeah. If you are expecting to be a developer, you'll have to learn how to train on the job. The developer who cannot take charge of his/her training gets to work on outdated technology. Your employer will train you only if they get something out of it. Don't believe anyone who tells you that they are going to train you in Java without any effort on you part. Even if you get some Java training, you will have to learn other technologies. You want them to send you on training for those too? Well by the time you finish that training, they technologies would have advanced or the needs of the project would have changed. You expect them to send you to training full time?

There are places that do it "properly", in the sense they identify the needs of the project, and identify the training the employees should get. The Government is one such place. These places are also the places that are

a) 5 years behind the curve.. simply because it's just so costly for them to introduce new technology
b) difficult to get good projects into because getting into a project that uses latest technology becomes a game of political maneuvering, rather than being good at your job. Everyone is trying to get into juicy projects. Everyone is trying to stab each other in the back to get into juicy projects


If you want to grow in this industry, you should get into a company that is a meritocracy. And to get ahead in an meritocracy, you have to show merit. If you are going to be handwringing about the employer not training you for 5 years, you will be shoved to the bottom of the pile.
 
Bartender
Posts: 2407
36
Scala Python Oracle Postgres Database Linux
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Well, Sterling, I can identify with some of your experiences, as I've made many of the same mistakes and am now trying to re-launch my own career as a result.

I was an Oracle Forms developer (along with various other secondary skills) for nearly 20 years, and I let myself get too comfortable in what turned out to be a proprietary rut. Although I did get some Java experience in that time - partly through my own efforts and partly through luck - the bulk of my work tended to be back on the core Oracle stack. The work was well-paid, but increasingly it was with clients who were using old technology (and often using it badly), so I failed to keep my skills up to date in the Oracle space: if you're too locked into expensive and bloated proprietary tools, it can be hard to find ways to acquire and extend those skills informally outside work-based projects. Meanwhile, I also failed to find/generate sufficient opportunities to build up my Java skills to a marketable level. I ended up spending long periods out of work, and scrabbling for jobs in a shrinking niche. Some of this was due to broader changes in the job market and employment patterns (offshoring/onshoring/global financial crisis etc), but in the end it was my own failure to change direction and improve my marketability soon enough that left me heading up a career cul de sac for several years.

Sounds like you're in the same boat, so I would strongly suggest you take charge of your own career and do something to change the situation for yourself now, rather than waiting for your employers to fix things for you. If you wanted to get into Java back in 2001, why did it take you 10 years to get hold of an introductory book and work through it? Why are you still waiting for your employers to offer you Java work spontaneously, when you have no Java experience and they can probably hire some kid from college with more Java than you claim to know? Follow the advice above to get more experience and build your Java skills by whatever means available. And why not take Henry's advice and try and rescue the Java job you've already been offered? After all, it sounds like things are already so bad at work that you could hardly make them much worse. Or look for alternatives outside software development - do you have experience that could be traded up into a business analyst role, for example?

Another track you might consider is to expand your skills into new areas where there isn't already huge competition from thousands of bright and ambitious graduates. If you can become the guy who knows just a bit more than everybody else about X, you might find yourself being offered opportunities to do more X in future. In my case, I've been doing various online courses with Coursera and MongoDB in my free time over the last year or so, which have really opened my mind to different areas of IT, and were also a lot of fun (and hard work). I also took a 50% pay cut last year, in order to get a job back in the Java eco-system. Now, thanks to my mix of skills, broader database experience, and the light dusting of knowledge I have acquired from the courses, I've been offered the chance to work on some pilot projects in big data and related technologies. Ironically, I've had to leave a good Java project with some really smart developers in order to do this, but you have to grab opportunities when they come along, and I'll still be doing some Java, either at work or at home. Maybe it will work out, maybe not, but at least I'm out of the Oracle Ghetto and having some fun at work. Even if the pay sucks!

So I would say you really need to start making your own opportunities, based on the things that you want to be doing a year or two from now, instead of wasting any more years waiting for your bosses to do it for you. With the rise of the MOOCs like Coursera and Udacity offering high quality courses from top universities, as well as public online courses from the likes of MIT and Stanford, there is really no reason to wait for your employer to spend $5000 to send you on a crap 5-day death-by-Powerpoint training course once a year, when you can be learning about cutting-edge ideas and technology for free at home.

Good luck.
 
Sterling Crapser
Ranch Hand
Posts: 55
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Thanks to you all for your feedback. I can see what has been happening with my job based on what you have all written and more importantly, what I have come to realize myself only recently. As incredible as it may seem, I actually believed I was going to be trained. Perhaps not like you get trained in the military and certainly not like being in school or college. But I was expecting some sort of structured program that all legacy developers would be put through as the company transitioned to Java based applications.

It may also help explain things to say I'm 59. My work experience has been primarily in structured environments where the job is defined and you know your role, tools, and responsibilities without having to worry about everything changing dramatically in a matter of months. I worked in restaurants, warehouses, manufacturing, some construction before settling into a CNC machinist position. But then the Soviet Union collapsed and I lost my job in my mid-thirties. I had never gone to college so I did that first before trying to find a new career. While in college I taught myself procedural programming on the side through a part-time job. After college I picked up a job that offered PowerBuilder training. By some odd circumstance I worked at that company for over a year without receiving any real assignments. So I bought books on PowerBuilder and spent months reading them and doing the exercises. I eventually quit and found another job as a PowerBuilder developer because you can only do pretend projects for so long. The work has to have substance behind it. That is how I got into OOP programming. But I never caught on to the fact that self-education is how the IT industry expects people to learn programming. I even felt like a fraud for a number of years because I did not have a formal computer science education! My degree is in Anthropology. I was an honor student. I took that major because I wanted an education...not just job training. Plus, the programming I learned was taking care of itself.

When I took my current job I really thought I was finally going to get some formal programming training. Perhaps I just wanted it too much. So I guess you could say I have been mesmerized to some degree and also got comfortable with what the company was providing in terms of work. But now they want everything to happen overnight. The project they gave me is over my head. I know I can learn what I need to know to finish it but they are not giving me the time necessary to do that. Working at home is not going to solve it either. There is too much to do. I think my best option is to take this whole thing as a rude awakening and see if I can navigate to a better situation...all the time continuing to educate myself in Java and its peripherals.

I can't help but wonder where this is all heading. It's getting so learning anything in terms of making an investment is becoming pointless. It will be obsolete before you realize it.
 
Jayesh A Lalwani
Rancher
Posts: 2759
32
Eclipse IDE Spring Tomcat Server
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Right. This is the most challenging part of being a programmer. Having to stay on top of ever changing technology. It's a lot like trying to stay up on a log rolling on water. You are running just to stay upright. So, if you are thinking of getting into programming, be prepared to do a lot of running. The good thing is that after you run on a rolling log for 5-10 years, staying up on a rolling log becomes second nature to you.

Part of this is the fault of the industry itself. "Software engineering" is a new branch of engineering. We are still figuring out the tools and processes. Also, the industry is made up of inventors. Everybody keeps inventing new stuff, which means you need to keep learning about new inventions.
 
Sterling Crapser
Ranch Hand
Posts: 55
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator

Jayesh A Lalwani wrote:Right. This is the most challenging part of being a programmer. Having to stay on top of ever changing technology. It's a lot like trying to stay up on a log rolling on water. You are running just to stay upright. So, if you are thinking of getting into programming, be prepared to do a lot of running. The good thing is that after you run on a rolling log for 5-10 years, staying up on a rolling log becomes second nature to you.

Part of this is the fault of the industry itself. "Software engineering" is a new branch of engineering. We are still figuring out the tools and processes. Also, the industry is made up of inventors. Everybody keeps inventing new stuff, which means you need to keep learning about new inventions.



What you are saying here has been right under my nose all along. I'm still reeling from the epiphany of it. I know other professions require their member base to engage in continuing education to remain "current" with new technologies and discoveries (the medical profession is a good example). But with IT, this seems to be the same requirement on steroids. As much as I feel like a fool, I need to get past that, hunker down so to speak and roll up my sleeves. I do look forward to the "second nature" part. I've certainly done that in other areas of my life. Thanks
 
Rancher
Posts: 3742
16
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator

Henry Wong wrote:As for savaging your career ... Your focus should be savaging the project.


Savaging ??
 
Henry Wong
author
Posts: 23834
140
jQuery Eclipse IDE Firefox Browser VI Editor C++ Chrome Java Linux Windows
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator

Joanne Neal wrote:

Henry Wong wrote:As for savaging your career ... Your focus should be savaging the project.


Savaging ??



Wow. That's a really bad spelling error -- producing a completely different and incorrect word. Let me go back and fix it.


And BTW, thanks for catching it ... have a cow...

Henry
 
Ranch Hand
Posts: 426
Eclipse IDE Fedora Linux
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator

Sterling Crapser wrote:

Jayesh A Lalwani wrote:Right. This is the most challenging part of being a programmer. Having to stay on top of ever changing technology. It's a lot like trying to stay up on a log rolling on water. You are running just to stay upright. So, if you are thinking of getting into programming, be prepared to do a lot of running. The good thing is that after you run on a rolling log for 5-10 years, staying up on a rolling log becomes second nature to you.

Part of this is the fault of the industry itself. "Software engineering" is a new branch of engineering. We are still figuring out the tools and processes. Also, the industry is made up of inventors. Everybody keeps inventing new stuff, which means you need to keep learning about new inventions.



What you are saying here has been right under my nose all along. I'm still reeling from the epiphany of it. I know other professions require their member base to engage in continuing education to remain "current" with new technologies and discoveries (the medical profession is a good example). But with IT, this seems to be the same requirement on steroids. As much as I feel like a fool, I need to get past that, hunker down so to speak and roll up my sleeves. I do look forward to the "second nature" part. I've certainly done that in other areas of my life. Thanks



So much drama. Why is it so hard to own your own career? The company you work for is interested in making money. It is not in business to train you. Take ownership of your own destiny and quit feeling sorry for yourself. Are you a good saver ? Do you put away money for a rainy day ? Invest some of that into your own education. In what field is your degree in ?
 
Roger Sterling
Ranch Hand
Posts: 426
Eclipse IDE Fedora Linux
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator

Jayesh A Lalwani wrote:Part of this is the fault of the industry itself. "Software engineering" is a new branch of engineering. We are still figuring out the tools and processes. Also, the industry is made up of inventors. Everybody keeps inventing new stuff, which means you need to keep learning about new inventions.



What are you talking about? Software engineering has been around since the 1960s. The computer that Apollo 11 used had software written by Engineers.

Software engineer John Pultorak worked 4 years to build a replica of the Apollo Guidance Computer (AGC), just so he could have one. And then he wrote a complete manual and put it online so that anyone else with similar aspirations wouldn’t have to go through the same painstaking research as he did. The manual is available free, but Pultorak says he spent about $3,000 for the hardware.

Read more: http://www.universetoday.com/34815/build-your-own-apollo-11-landing-computer/#ixzz2wDcIVfe7





http://en.wikipedia.org/wiki/Apollo_11
 
Henry Wong
author
Posts: 23834
140
jQuery Eclipse IDE Firefox Browser VI Editor C++ Chrome Java Linux Windows
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator

Roger Sterling wrote:

Jayesh A Lalwani wrote:Part of this is the fault of the industry itself. "Software engineering" is a new branch of engineering. We are still figuring out the tools and processes. Also, the industry is made up of inventors. Everybody keeps inventing new stuff, which means you need to keep learning about new inventions.



What are you talking about? Software engineering has been around since the 1960s. The computer that Apollo 11 used had software written by Engineers.



Perhaps... but software engineering as an accredited field did not exist -- back in the early 80's, when I went to college. Back then, if you wanted to do computers and engineering, the best route was getting a degree in electrical engineering.

For me, I found chemistry more interesting, so got my degree in Chemical Engineering.

Henry
 
Roger Sterling
Ranch Hand
Posts: 426
Eclipse IDE Fedora Linux
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator

Henry Wong wrote:

Roger Sterling wrote:

Jayesh A Lalwani wrote:Part of this is the fault of the industry itself. "Software engineering" is a new branch of engineering. We are still figuring out the tools and processes. Also, the industry is made up of inventors. Everybody keeps inventing new stuff, which means you need to keep learning about new inventions.



What are you talking about? Software engineering has been around since the 1960s. The computer that Apollo 11 used had software written by Engineers.



Perhaps... but software engineering as an accredited field did not exist -- back in the early 80's, when I went to college. Back then, if you wanted to do computers and engineering, the best route was getting a degree in electrical engineering.

For me, I found chemistry more interesting, so got my degree in Chemical Engineering.

Henry



The Software Engineering Institute hosted by Carnegie Mellon University was established in 1984 at the request of the Department of Defense. The Carnegie Mellon Software Engineering Institute (SEI) is a federally funded research and development center headquartered on the campus of Carnegie Mellon University in Pittsburgh, Pennsylvania, United States. SEI also has offices in Arlington, Virginia, and Frankfurt, Germany. The SEI operates with major funding from the U.S. Department of Defense. The SEI also works closely with industry and academia through research collaborations. Kansas State University's Software Engineering curricula began in 1974.

I suppose if you couldn't attend a software engineering school, Chemical Engineering was a good choice.

To say that "'Software engineering' is a new branch of engineering. We are still figuring out the tools and processes." is not accurate at all. I suppose Jayesh has not heard of the Capability Maturity Model which has been discussed in software engineering circles for at least the last three decades (al la R. L. Nolan, 1973, used in K-State's curricula)? Or read any of Ed Yourdon's software engineering books which he began writing in 1974?

 
chris webster
Bartender
Posts: 2407
36
Scala Python Oracle Postgres Database Linux
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator

Roger Sterling wrote:So much drama. Why is it so hard to own your own career? The company you work for is interested in making money. It is not in business to train you. Take ownership of your own destiny and quit feeling sorry for yourself...


Well, I think Sterling's already got that particular message, and it sounds like it's been quite a harsh and abrupt lesson for him, so maybe you can tone down the personal criticism a little and focus on more positive suggestions instead? It's easy to be critical, but not everybody's coming from the same starting point as yourself.

In any case, there are plenty of organisations - indeed whole sectors - where people may work for the same organisation for many years and in return for their commitment they may also expect their employer to play a positive role in developing their careers. When I worked in Germany, this was pretty much the norm from software houses to financial services, while here in the UK there is more of the US "hire-and-fire" mentality where career development is often left to the individual because neither party to the employment relationship feels much loyalty to the other side. Right now I'm working for the public sector, where people really don't have much of a clue about taking charge of their own career directions, because they've never worked in a culture of doing so. With public spending cuts in recent years leading to job losses, and massive changes in employment practices outside the public sector, I think many of them are learning the same tough lesson: skill up if you want to survive.

On the plus side, there are tons of resources available online these days - often free of charge - to help you develop your skills, and there is a huge range of options beyond Java, so good luck to Sterling in re-launching his own career.

  • Coursera programming classes: https://www.coursera.org/courses?cats=cs-programming
  • Udacity Java programming: https://www.udacity.com/course/cs046
  • Udacity Data Science track (look for "free courseware" option): http://blog.udacity.com/2013/11/sebastian-thrun-launching-our-data.html
  • MongoDB (NoSQL database) courses: https://education.mongodb.com/
  • And of course, JavaRanch's own Cattle Drive: http://www.coderanch.com/t/487183/Cattle-Drive/Cattle-Drive-Instructions

  • Finally, it's always worth keeping an eye on broader developments beyond your current skills e.g. there's lots of good stuff on InfoQ: http://www.infoq.com/
     
    Henry Wong
    author
    Posts: 23834
    140
    jQuery Eclipse IDE Firefox Browser VI Editor C++ Chrome Java Linux Windows
    • Mark post as helpful
    • send pies
    • Quote
    • Report post to moderator

    Roger Sterling wrote:
    The Software Engineering Institute hosted by Carnegie Mellon University was established in 1984 at the request of the Department of Defense. The Carnegie Mellon Software Engineering Institute (SEI) is a federally funded research and development center headquartered on the campus of Carnegie Mellon University in Pittsburgh, Pennsylvania, United States. SEI also has offices in Arlington, Virginia, and Frankfurt, Germany. The SEI operates with major funding from the U.S. Department of Defense. The SEI also works closely with industry and academia through research collaborations. Kansas State University's Software Engineering curricula began in 1974.




    Yea, I thought you might bring up Carnegie Mellon -- it was a large topic of discussion back in my Junior year of college. It was, of course, also not accredited back then.

    But it was cool -- as it was affirmation that working with computers can be engineering, and not just something that engineers did.

    Henry
     
    Roger Sterling
    Ranch Hand
    Posts: 426
    Eclipse IDE Fedora Linux
    • Mark post as helpful
    • send pies
    • Quote
    • Report post to moderator
    @Henry Wong

    Also, what was cool was the work that UC Berkeley was doing with Unix BSD , in that it was one of the first large-scale practicing engineering efforts during those early years. In essence, UC-B was applying those engineering principles to an actual software development effort, in a rigid, scalable, and open way. I often think of the humor in all the copyrights owned by all the various parties : AT&T , which later split off the 4.2 tree to form System V ; IBM with AIX ; Santa Cruz Operation Unix/Xenix ; and Microsoft which used the Unix software libraries as it's basis for Wndows NT operating system (developers will recognize all the same error codes in the C header files between the two).
     
    chris webster
    Bartender
    Posts: 2407
    36
    Scala Python Oracle Postgres Database Linux
    • Mark post as helpful
    • send pies
    • Quote
    • Report post to moderator
    @Sterling:
    Just had a thought about your software "challenge":

    This is a huge XML file and I'm guessing the data you're actually interested in is probably a fraction of the total volume, because XML is horribly bloated to begin with, which is why it's always sucked as a data transfer format, except that most other formats also seem to suck as well.

    Is the data in a standard well-known XML format e.g. for financial data? If so, it's possible you could find standard converters (maybe using XLST if necessary) that would map it into a more manageable format or allow you to extract just the stuff you need? Try Google and maybe you'll get lucky.

    Are you aiming to put the output data into a database, or could you use a database as a temporary intermediate store? If so, you could look at standard ETL tools such as Talend Open Studio, which provide tools for extracting/transforming/loading data into databases from all kinds of source formats, including XML. Talend Open Studio is free to download and there are lots of tutorials online, so it might be worth trying it out to see how far you get. There are other ETL tools, both open source and proprietary, and your company may already be using one in-house e.g. Informatica Powercenter, Oracle Data Integrator, Pentaho etc.

    One of the advantages of using an ETL tool is that your processes are much more maintainable/repeatable if they're set up via configuration rather than hand-coded on an ad hoc basis. If you need to extract an extra field, or apply some extra formatting etc, you can do so relatively easily via the ETL tool, whereas adding this stuff to a hand-coded XML processor is always painful. Also, many ETL tools will read/write well-known file formats even if you're not using a database.

    The downside is that these ETL tools may be slower than a really well-coded bespoke solution, but with 3GB of XML in each file you can probably forget about "fast" for now anyway.

    Of course, we're moving away from your Java coding goals here, but it might be a better solution to the actual problem than hand-coding this kind of thing yourself.
     
    Marshal
    Posts: 24594
    55
    Eclipse IDE Firefox Browser MySQL Database
    • Mark post as helpful
    • send pies
    • Quote
    • Report post to moderator

    chris webster wrote:@Sterling:
    Just had a thought about your software "challenge":

    This is a huge XML file and I'm guessing the data you're actually interested in is probably a fraction of the total volume, because XML is horribly bloated to begin with...



    Chris, this problem was part of a very long thread sometime last year. It's over here if you want to have a look: http://www.coderanch.com/t/622855/XML/Suggestions-Parsing-Huge-XML-File but it has had no posts for about four months now.
     
    Sterling Crapser
    Ranch Hand
    Posts: 55
    • Mark post as helpful
    • send pies
    • Quote
    • Report post to moderator

    Paul Clapham wrote:

    chris webster wrote:@Sterling:
    Just had a thought about your software "challenge":

    This is a huge XML file and I'm guessing the data you're actually interested in is probably a fraction of the total volume, because XML is horribly bloated to begin with...



    Chris, this problem was part of a very long thread sometime last year. It's over here if you want to have a look: http://www.coderanch.com/t/622855/XML/Suggestions-Parsing-Huge-XML-File but it has had no posts for about four months now.



    That's right. The original attempt to work with that file was abandoned. In fact the entire goal was rearranged. I ended up merely extending the existing Java code to parse the data into a single table that was already in use. In effect, it became a huge copy and paste job with lots of hard-coding.
     
    Paul Clapham
    Marshal
    Posts: 24594
    55
    Eclipse IDE Firefox Browser MySQL Database
    • Mark post as helpful
    • send pies
    • Quote
    • Report post to moderator

    Sterling Crapser wrote:I ended up merely extending the existing Java code to parse the data into a single table that was already in use. In effect, it became a huge copy and paste job with lots of hard-coding.



    Yeah, I recognize that style of design. Unfortunately when you're working with integrating other people's data and other people's data formats into your system it's very hard to avoid that. You can try to produce generalized code (and we did) but don't expect to have too much success. Even with standard input formats used by multiple business partners you'll find that different organizations will interpret the data items differently, so you're right back to hard-coding again.

    As for your career problem, I was a management consultant for ten years. It took me that long to notice that everybody else was getting promoted but I wasn't. It hadn't occurred to me that part of the consultant's job was to bring in new business, and nobody had specifically told me that. But after I finally wised up I got out of there and started as a programmer with one of our clients. Fortunately I was only in my thirties at the time, and fortunately I had a job opportunity waiting for me.
     
    Sterling Crapser
    Ranch Hand
    Posts: 55
    • Mark post as helpful
    • send pies
    • Quote
    • Report post to moderator

    Paul Clapham wrote:Yeah, I recognize that style of design. Unfortunately when you're working with integrating other people's data and other people's data formats into your system it's very hard to avoid that. You can try to produce generalized code (and we did) but don't expect to have too much success. Even with standard input formats used by multiple business partners you'll find that different organizations will interpret the data items differently, so you're right back to hard-coding again.

    As for your career problem, I was a management consultant for ten years. It took me that long to notice that everybody else was getting promoted but I wasn't. It hadn't occurred to me that part of the consultant's job was to bring in new business, and nobody had specifically told me that. But after I finally wised up I got out of there and started as a programmer with one of our clients. Fortunately I was only in my thirties at the time, and fortunately I had a job opportunity waiting for me.



    Thanks. It's funny...I was just watching a news article on TV this past weekend about how people who are not afraid to fail are the most successful. I need to keep that in mind.
     
    Sterling Crapser
    Ranch Hand
    Posts: 55
    • Mark post as helpful
    • send pies
    • Quote
    • Report post to moderator
    Okay...I believe I have gotten over my rude awakening and the idealistic posts will now cease. I hope you all can indulge me a bit here and understand we all need to get things out of our system at times.

    I have decided to look at the positive in all this, recognize the experience I do have and take steps to reinvent myself so to speak. I'm thinking on taking a direction of self employment, contract for hire...that sort of thing. But where to begin? I would love to hear what any of you can share of your own careers if you don't mind. Especially those of you who are freelancing...how you came to do it...was it deliberate or spontaneous? Any suggestions would be welcome (books, websites, networking) to get things rolling. I know I have my work cut out for me but I have the benefit of not being a complete newbie in this industry. It's more a case of deciding where I want to focus and begin developing the toolset necessary. That's how it seems at this point at least.

    Thanks for reading and taking time to share your thoughts.
     
    Jayesh A Lalwani
    Rancher
    Posts: 2759
    32
    Eclipse IDE Spring Tomcat Server
    • Likes 1
    • Mark post as helpful
    • send pies
    • Quote
    • Report post to moderator
    Well, the good thing about contracting work is that you get exposure to differrent technologies. You keep going to new places to work every 6-12 months, and in every place you see a differrent stack of technologies. The bad thing is that they will expect you to hit the ground running, might overwork you, and will not train you. You will get paid more though

     
    chris webster
    Bartender
    Posts: 2407
    36
    Scala Python Oracle Postgres Database Linux
    • Mark post as helpful
    • send pies
    • Quote
    • Report post to moderator
    I was a contractor for nearly 20 years (in the UK) and I really enjoyed it for the most part, but as I said before, I failed to keep my skills up to date so "my" market disappeared from under me. In your case, freelance work might make a good solution in the short term at least, as you may find you are able to sell your "legacy" skills in PowerBuilder and your other experience to clients who need those skills temporarily for particular projects (e.g. legacy systems) but who wouldn't bother hiring a long term PowerBuilder developer for example. This is the flip-side of the "Java for everything" syndrome: because so many people use Java for everything, there can be a shortage of people with older niche skills outside Java, especially in development because the old hands who had those skills will probably have moved on years ago and the newcomers don't know anything but Java. If you're really lucky you might be able to get onto a conversion project e.g. converting a PowerBuilder system to Java, where you can sell your PB skills and perhaps gain some Java.

    But as Jayesh says, nobody wants to pay you contract rates to train you in new skills - you're expected to be productive in the skills they're paying you for, so you'll still need to invest time and effort in expanding your other skills in your own time e.g. learning Java, or .NET or "Big Data" or NoSQL or testing or whatever you think will be interesting/rewarding/sustainable for you in the longer term. However, with a bit of luck you can earn enough as a contractor to take time out here and there to work on your skills. Also, it's good fun to be able to choose your projects to some extent, experience different companies / business areas and working environments, and it's really good to be largely outside the office politics. Just keep an eye on the market and make sure you keep your own skills/experience in line with what people are willing to pay for. Finally, get advice from contractors in your region, and make sure you understand the tax implications of working freelance.
     
    Henry Wong
    author
    Posts: 23834
    140
    jQuery Eclipse IDE Firefox Browser VI Editor C++ Chrome Java Linux Windows
    • Mark post as helpful
    • send pies
    • Quote
    • Report post to moderator

    Agree++

    If the concern is the increasing pace of technology, or the lack of formal training ... keep in mind that consulting has it in spades.

    Henry
     
    Sterling Crapser
    Ranch Hand
    Posts: 55
    • Mark post as helpful
    • send pies
    • Quote
    • Report post to moderator
    Thanks folks. I have been thinking a lot of the same thoughts. Chris states he didn't keep up with the new technologies and his market disappeared. In my situation I think I fell into a mindset where I was fixated on the company as an IT microcosm and the outside world sort of flew past me. I do think using my PowerBuilder experience to garner some freelance work while developing my abilities with new technologies is the way to go. I would certainly enjoy the freedom to direct my own course instead of having it dictated.
     
    Consider Paul's rocket mass heater.
    • Post Reply Bookmark Topic Watch Topic
    • New Topic
    Boost this thread!