jzoller Posted July 16, 2011 Report Share Posted July 16, 2011 So, I'm on round two of back surgery recovery, which leaves me a lot of time to think beyond what meeting is coming up next... I'd like to be a better LabVIEW programmer (yes, even after 10 years!). One of the things that, I believe, makes for a better programmer is working with those who are better than you. Honestly, most of the people I've worked with really, ah, don't care that much... or, often, there isn't even another LabVIEW programmer for me to work with. In my experience, this is the rule for almost everyone. Over the years, this situation has left me doing a lot of research and testing, but without feedback, I often end up with the feeling of just "making things up". And so, when I run across a job listing like this totally awesome gem, I'm left wondering... am I even remotely qualified for that? I'm curious... what have other people done to become better top-end LV programmers, and to work with the best in the industry? Joined one of the top consulting firms? Joined NI? Started their own business? Anything else? Thanks, Joe Z. 1 Quote Link to comment
Michael Aivaliotis Posted July 16, 2011 Report Share Posted July 16, 2011 I love this line form the ad: "prefer proficiency in C/C++ programming". I guess that counts me out I wonder if my 17 years experience in G overrides that. -- You will only know if you're qualified, if you apply. Half the work is just showing up. A lot of people don't. Quote Link to comment
Daklu Posted July 17, 2011 Report Share Posted July 17, 2011 I'm curious... what have other people done to become better top-end LV programmers, and to work with the best in the industry? Joined one of the top consulting firms? Joined NI? Started their own business? Anything else? [Hmm... how to respond without giving the impression that I think I'm a "better top-end LV programmer?" I guess I'll just say I don't think I'm a "better" programmer than others here on LAVA... I just have a different skillset than many others. I'm confident in my ability to architect a modular application and create reasonably good reusable components, but when it comes to, say, complex scripting, I think of Jon (JGCode.) For unit testing advice I go to Omar. When I need highly optimized code I think of Ben. If I'm wondering about low level interactions between LV and the operating system or c code I think of roflk. Want details on LV and .Net interactions? Talk to Brian Tyler. LVOOP? Stephen Mercer. Well architected non-oop systems? ShaunR. The list goes on and on...] IMO, your cause and effect is out of order. You don't join a top consulting firm or NI so you can become a good developer. You become a good developer so they will want to hire you. (Assuming that is your goal.) If your goal is just to improve yourself as a developer, you can do that without quitting your current job. Here are some of the things I've done: Easily the number one thing you *have* to do is write lots of code. Lots. And I don't mean different flavors of the same app you've always done. Be curious. Try different things. Experiment with a new way to solve a problem. There's absolutely no substitute for implementing code and learning first hand what problems you run in to, what solutions you can use to work around the problem, and see how the final product meets your original goals. Second most important step is to discuss ideas with other people. Nobody at work to discuss them with? Post them on Lava--that's what I do--or the dark side. Present at a user group meeting. Undoubtedly not every one will be enamored with your idea. Don't worry about it. What's important is getting lots of different eyes on it and generating a discussion. Even if that idea is bad, the discussion can trigger new ideas that may be good. Third, start your own library of programming books. (And read them.) There aren't a lot of good LV texts out there. But you know what? There are tons of good programming books available in other languages and many of the things they teach are good programming concepts, not just good .Net or Java concepts. It will be confusing at first trying to figure out which concepts apply to LV and how to translate them to a dataflow language. The process of finding the answer will naturally improve your understanding of LV and help you develop better applications. You can of course use public libraries to check out the books you want to read. Personally I'll read through books I purchased 7 or 8 years ago and still get something new out of them because my perspective and level of understanding has changed. Fourth, commit to it. It unrealistic to expect your exployer to pay you for all the time you spend learning. Plan on spending a lot of personal time writing code, exploring new ideas, reading books, posting to Lava, etc. For example, over the holidays I spent three full days working with one of my projects trying to figure out how to write and organize unit tests. (And I still have a long ways to go before I feel like I'll really understand it.) ------ But as to whether or not you're qualified for the job, that's a question only the hiring manager can answer so don't worry about it too much. Job requirements usually list the "ideal" candidate and the person hired almost never has all the skills listed. If you're interested in the job throw your resume into the mix. All they can do is say no. Quote Link to comment
Roderic Posted July 17, 2011 Report Share Posted July 17, 2011 Hi, I have little experience but I thought a lot on how to become a better programmer: - I currently have a mentor who helped me a lot, my skills rocketed benefiting from his good advices - I will join a top LabVIEW consulting firm - talking with programmers (CVI etc..) helped me aswell because they also have good ideas you can implement in LabVIEW. - I also built my hown book library which helped me through certification Quote Link to comment
Daryl Posted July 17, 2011 Report Share Posted July 17, 2011 So, I'm on round two of back surgery recovery, which leaves me a lot of time to think beyond what meeting is coming up next... I'd like to be a better LabVIEW programmer (yes, even after 10 years!). One of the things that, I believe, makes for a better programmer is working with those who are better than you. Honestly, most of the people I've worked with really, ah, don't care that much... or, often, there isn't even another LabVIEW programmer for me to work with. In my experience, this is the rule for almost everyone. Over the years, this situation has left me doing a lot of research and testing, but without feedback, I often end up with the feeling of just "making things up". And so, when I run across a job listing like this totally awesome gem, I'm left wondering... am I even remotely qualified for that? I'm curious... what have other people done to become better top-end LV programmers, and to work with the best in the industry? Joined one of the top consulting firms? Joined NI? Started their own business? Anything else? Thanks, Joe Z. I think this is a great question. I'm the only Labview programmer at my office so its very difficult to get constructive criticism on my code/habits, etc. Short of making everyone here sign confidentiality agreements, online forums can only help so much. I usually only go to the forums when I have a question, but once in a while I can spend more time reading through these threads. I tend to jump around and read through them very quickly when I do have the time so maybe I don't take away as much as if I could spend more time here. Maybe staying focused on just one topic each time I read here would be more helpful but reading here is kind of like taking a kid to a candy store One of the things I do is to try something new or different with each project. It is not always easy to just jump into unfamiliar waters when you know you have a short deadline so often I end up reverting to trusty old methods I have used forever. This is not helpful in becoming a better programmer but it does help keep myself employed. So I often end up doing smaller things differently but stick to the same old architectures. I really really really want to jump into OOP but have not yet had a project that will allow me the kind of time that I could make such a drastic change and still be in my comfort zone. So in the meantime I just keep reading about as much as I can and wait for the right project to come along. I guess my response is turning into more of a rant than a helpful response to your question Quote Link to comment
silmaril Posted July 18, 2011 Report Share Posted July 18, 2011 The Lone Ranger LabVIEW programmer is certainly one of the big problems. How are you supposed to get better without the possibility to have frequent discussions about your work with other competent people? One way to help solve this: Consider getting external input. There are companies out there with a lot of expertise in LV programming from which you can buy some consulting / coaching time (eg. NI Allicance Partners). What's important from my point of view is that you don't simply buy an engineer who writes the code of your project, they should commit themselves to transfer knowledge, so you really learn some new concepts. It might be a good idea to go through the design phase of a new project together. If this is done properly, you should be able to do the implementation on your own afterwards (or maybe decide to share the work if the deadline is close). One difficult point with this can be convincing your boss that this is a worthwhile investment in the skills of his employee and that this does not mean you are not good at your job. In contrary: You have reached the limit of what you can learn on your own and the official LV classes can only get you so much further on your way to becoming better and better at your job. Disclaimer: I should admit, that this posting is not totally unbiassed, since my company might profit from people who decide to book some coaching time after reading this. Quote Link to comment
ASTDan Posted July 18, 2011 Report Share Posted July 18, 2011 I have been a Lone wolf LV programmer my entire career. I have just kept showing up and learning what I can. I have read books, attended NI Weeks, taken classes, become a CLD, read articles, started LV user groups, started my own business, and most of all experimented and played around with LabVIEW. Strangely I now find myself teaching LabVIEW classes. IMHO becoming good at anything is a journey, and you need to acquire knowledge from multiple sources. Having a mentor is great, but waiting around for one could be a long wait. Jump in, try your best, fail and succeed. It's been a fun ride.. Quote Link to comment
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.