|
My VP of eng. told me a couple of weeks ago, the library I have been working on for the last year or so, uses the wrong approach, paradigm, and language ("explosively disruptive", were his words).
He then asked me to stop work and "park it" for the time being. Instead, our organization will adopt a third-party library, of worse off quality (although feature rich and complete), for the most part closed-source, and (arguably) free.
The SW solution implemented using this library will be used in the manufacturing of a highly sophisticated piece of electronics. The message is clear: I have to give support to this alternative solution, which effectively makes my job obsolete, and if I don`t (or things fail the way I anticipate they will), chances are I will get laid off.
It seems like I can`t win:
- If the third party library solution works, I have successfully proven that my job is obsolete.
- If it fails, I am guilty of negligence, and I have failed, and very likely I will end up jobless in this case too.
Do you see any dignifying way out of this conundrum?
Start typing my resume?
Cheers.
ALF
|
|
|
|
|
Always keep updating the resume, even when things are going well. All the articles say that you should always be on the lookout for a different job.
It's hard to say from an outside vantage point whether your situation is really as black or white as you think it is.
Were you hired only to work on that one library? Are you sure there would be no further work if the 3rd party library is adopted?
What if you become the resident expert on the alternate library? Wouldn't that make you valuable?
The difficult we do right away...
...the impossible takes slightly longer.
|
|
|
|
|
Thank you for your reply. You bring up good points!
|
|
|
|
|
Hi, you are in a difficult place, and of course I have no idea what the job market is like in Croatia, or what your options may be. Are you financially in a place where you can quit if you want to ?
I also wonder if you are the sole author who created this library you've worked on for the last year, and, if you were, where was the VP of Engineering in the process ? If you were not the sole author, then are there other people who are going to have their careers, or jobs, or reputations, threatened by the decision to call off this effort which must have cost the company some real money ?
I have a feeling there's a lot we don't know here, perhaps should not know, and, of course, I respect whatever decisions make to protect your own reputation/privacy, etc.
If I were in a place where I was financially secure, felt I had the freedom to quit, and I foresaw an "ugly ending" coming in which I would be blamed for possibly others' mistakes, I would probably quit as soon as I had gotten my resume updated.
good luck, Bill
«I'm asked why doesn't C# implement feature X all the time. The answer's always the same: because no one ever designed, specified, implemented, tested, documented, shipped that feature. All six of those things are necessary to make a feature happen. They all cost huge amounts of time, effort and money.» Eric Lippert, Microsoft, 2009
|
|
|
|
|
Thanks for your reply.
Yes, unfortunately, I am the sole author of the library. It was a colossal mistake on my part: I failed to rally support and get other developers enthusiastic about the whole idea. Developers (average ones) don't like risks. Lesson learned.
I will probably end up packing-up and leaving, however I am trying to allow myself some prudent time before doing so. I don't want to "go from a old job", but instead I want to "go to a new job".
|
|
|
|
|
My suggestion: test the 3rd party library first. Not everything, just to stuff you need or the crucial stuff. If you can prove it won't do the trick, then you win.
Testing a component before integrating it is common in SW.
If that's ignored you didn't stand a chance from the very start.
Kitty at my foot and I waAAAant to touch it...
|
|
|
|
|
Just as the topic suggests. How do you pick a language to master?
I found it very easy to pick languages to try out and experiment with. I have experience writing at least 50 lines of code in over 15 languages. That being said, through all my experimenting and analysis, Ruby became my first choice for general purpose programming.
I am not claiming that I am extremely knowledgable with Ruby but I find its clean syntax to be preferable for getting things done quickly and elegantly (just my opinion). Recently I began to wonder whether since Ruby is my favourite language, if I should take the time to really dig in and master it. Learn all of its intricacies, traps, and potential. But what if mastering Ruby is not a good career choice? Certainly time is limited, it takes a long time to master a language, and there are literally hundreds of languages that all seem to have particular niches, strengths, and weaknesses. So how to pick one to master?
How do I pick a language to master? What if Ruby is a dying language? What if where I am living, there are no companies that are using Ruby as their programming language? What if Ruby is not [insert quality here] {fast, stable, secure, powerful, configurable} enough? What if I am constantly using another language to attempt to circumvent this? Should I be true the language I love, or should I force myself to master a language that will give me more fine control and/or more job opportunities?
|
|
|
|
|
Sea_Sharp wrote: not a good career choice
They are all good career choices, even if they become obsolete ten years from now.
|
|
|
|
|
I'll try to keep this short and sweet as possible but I could easily make this a novel I am sure.
I have been working as a project coordinator for the past few years in the construction industry travelling around Canada for large projects. While my primary task has been in tracking quantities and reporting on productivity and progress, I have been able to use my time there to build some tools in Microsoft Excel using VBA. This made me develop an ever growing passion for scripting and developing. In my spare time I began building scripts in Ruby and even dipped my toe in Visual C#. Slowly but surely the passion became obsession and now I find myself unfulfilled by my current career direction. I don't want to spend the rest of my life travelling for work, tracking quantities and only getting the rare opportunity to build a software tool or script. I want every work day to revolve around me solving computer system issues and building software tools.
The main catch is while I have spent the last 3 years reading technical manuals, developing test systems, and experimenting night and day I don't have any actual accreditation in software development or even system administration. I realize I am going to be competing with decorated college graduates and professionals with decades of experience in the field. I don't even know how I would compare to fresh college grad in terms of my proficiency. This is why I want to take the plunge and earn some accreditation and fill any holes I may have created by being almost exclusively self-taught.
Basically I see two possible routes as follows;
A professional certification - eg. Cisco Certified Administrator, Red Hat Certified Engineer, or Microsoft Server Administrator etc.
A college degree - eg. Software Engineering, Server/Database/System Administrator
I am pretty stuck on how best to go about this and ensure that both the program will fill in any knowledge gaps I may have and also give some weight to my resume and ensure I will be a desirable prospect. I like the idea that I could easily cram hard and get 2 or 3 professional certificates within a few months on my own schedule, but if they don't carry much weight in the industry than I don't want to waste my time either. I like the idea of taking a full program in a respectable institution for the idea that it will really fill in my weaknesses and give me the best odds for finding long term employment but I don't know if I am aggrandizing these types of institutions and the weight they carry. I want to find something that will give me the best bang for my buck in terms of time spent vs employment opportunities.
Basically just looking for some anecdotal thoughts and options on these two tracks and what program(s) would you pursue if you were starting out as a beginner all over again. I welcome any opinions on this matter.
|
|
|
|
|
I traded my hobby for programming for a career in programming in 1989 by applying to a "head hunter" service and then proving my talent on the job. And while I don't dismiss a degree in computer science I don't think it is necessary to become a professional programmer.
As a hiring manager for a global technology company I look for transferable skills: the understanding of how to think conceptually, collaborate and overcome boundaries; build clean systems that last and are readable and maintainable.
If you can demonstrate to me the basics understanding of being a professional developer rather than someone who has learned to write code, I would consider your application over someone with a 4 year degree who can't build a clean, sustainable legacy code base.
Just my 2 cents.
|
|
|
|
|
Hello. What could be the right term for a person who supervises other teachers. For example a supervisor who supervises all the math teachers. Then a supervisor who supervises all the computer science teachers. What could be the right term for this supervisor ? (I have a feeling that supervisor isn't suitable in the education sector).
This world is going to explode due to international politics, SOON.
|
|
|
|
|
How about "head of department" / "department head"?
"These people looked deep within my soul and assigned me a number based on the order in which I joined."
- Homer
|
|
|
|
|
Hi folks!
My boss asked me to give an interactive training to our developers
Requierement / ideas:
Total time about 1 hrs / 1h30
The team is about 12 developers (all level)
The goal is to help improve something and make the team better
The topic is not clearly fixed but my Idea might be something about "clean code" as we have lots of maintenance code that most of the time didn't tell the intent so just helping that might give a huge gain.
I could imagine:
- Asking to write a small program (or faster to complete missing part of a project) with cases that often lead to bad code. (like unreadable bool expression, use/reuse of temp variable ...)
This might be in team of 2 person if they wish
The goal of this exercises might not be disclosed so they will more focus on the result than the maintenance side
- Then in the meeting room we could review the samples and discuss about it
- I would have a sample ready (if stress goes to high) but i might try doing some refactoring live just to make things better.
Questions
Have you ever experimented this kind of exercise?
Any better Idea or some resource to get more idea?
Have you an idea of a sample to ask? I feel that something like FizzBuzz will be to much complicated for most of the audience (they aren't algorithm kind but mostly client/server and data entry form. I prefer not going to deep in OO either)
Thanks a lot.
Vincent
|
|
|
|
|
Hi Vincent,
Nice post.
I have some ideas:
1) If you feel, you can tell them before the training to think of an idea.
- Realize that idea into an algorithm. In the training you can discuss the algorithm.
In fact you can hold one more session to discuss the coding part of it(Filter out the people whose idea is innovative).
- This way, may be some of them can even come up with a patent of their own.
- Development includes innovation as well.
2) Or, an interactive session could be some thing like giving them a complex piece of code in the training and telling them to give their thoughts on it.
- Thoughts could be code optimization
- Impending/Current bugs in the code
3) A reverse of the point 2 could be fruitful as well, i.e. telling them to find out a code full of bugs.
- You can have a "lessons learned" session to not write such a code (Which we very frequently have ).
I would also suggest to not give this task in pairs in the beginning, this would help every one to speed up as soon as possible.
It could also happen that the first session might not fruitful, but consecutive sessions will work fine. Once you gain the momentum, you can keep this session once a week.
Thanks,
Rahul
modified 19-Oct-16 14:36pm.
|
|
|
|
|
Hello, I was wondering if anyone can recommend any websites which teach .Net, C#, C++ programming languages and provide you with a certificate of authenticity?
The following: Alison.Com provide courses in coding and certificates, but I am looking for other resources.
If anyone knows of any, especially authentic ones, can you kindly post some referrals. Thanks
Regards,
CodingK
|
|
|
|
|
|
Thanks a lot for that Peter.
Regards,
CodingK
|
|
|
|
|
Pluralsight is good and they issue some kind of certificates too.
|
|
|
|
|
That's great, thanks for that Tomas. I guess any company that offers a certificate of authenticity looks good on a Curriculum Vitae.
I am actually trying to get a friend of mine into Software Development, but also to get them some papers to prove they've done some courses first.
Thanks again.
Regards,
CodingK
|
|
|
|
|
Hello all: I have a friend interested in learning coding and she found www.freecodecamp.com and www.courseforward.com. I know nothing about the sites and was wondering if they are legit, have anything to teach, and could help a complete beginner.
Thanks.
Kurt
modified 15-Oct-14 11:33am.
|
|
|
|
|
Your best bet would be to point her towards a good book instead
|
|
|
|
|
I am already supplying books, and plan on helping her out all the way, but I just figured since I have limited time one of these freeby camps might help. Do they have anything at all to offer?
|
|
|
|
|
|
Thanks then! I will tell her not to bother.
|
|
|
|
|
There was a post about Microsoft Small Basic[^] a while ago. Might be worth looking into for a newbie.
Jeremy Falcon
|
|
|
|
|