Slashdot Mirror


Ask Slashdot: How To Teach Generic Engineers Coding, Networking, and Computing?

davegravy writes: I work at a small but quickly growing acoustic consulting engineering firm, consisting of a mix of mechanical, electrical, civil, and other engineering backgrounds. When I joined almost 10 years ago I was in good company with peers who were very computer literate -- able to develop their own complex excel macros, be their own IT tech support, diagnose issues communicating with or operating instrumentation, and generally dive into any technology-related problem to help themselves. In 2017, these skills and tendencies are more essential than they were 10 years ago; our instruments run on modern OS's and are network/internet-capable, the heavy data processing and analysis we need to do is python-based (SciPy, NumPy) and runs on AWS EC2 instances, and some projects require engineers to interface various data-acquisition hardware and software together in unique ways. The younger generation, while bright in their respective engineering disciplines, seems to rely on senior staff to a concerning degree when it comes to tech challenges, and we're stuck in a situation where we've provided procedures to get results but inevitably the procedures don't cover the vast array of scenarios faced day-to-day. Being a small company we don't have dedicated IT specialists. I believe I gathered my skills and knowledge through insatiable curiosity of all things technology as a child, self-teaching things like Pascal, building and experimenting with my own home LAN, and assembling computers from discrete components. Technology was a fringe thing back then, which I think drew me in. I doubt I'd be nearly as curious about it growing up today given its ubiquity, so I sort of understand why interest might be less common in today's youth.

How do we instill a desire to learn the fundamentals of networking, computing, and coding, so that the younger generation can be self-sufficient and confident working with the modern technology and tools they need to perform -- and be innovative in -- their jobs? I believe that the most effective learning occurs when there's a clearly useful purpose or application, so I'm hesitant to build a training program that consists solely of throwing some online courses at staff. That said, online courses may be a good place to get some background that can be built upon, however most that I've come across are intended for people pursuing careers in computer science, web development, software engineering, etc. Are there any good resources that approach these topics from a more general purpose angle?

7 of 197 comments (clear)

  1. You need to have IT person by sinij · · Score: 5, Insightful

    It is unreasonable to expect mechanical engineer to be able to diagnose network issues, just like it would be unreasonable to expect network engineer to know how to calculate shear forces going through a support beam.

    Hire multiple people to do multiple jobs or keep looking for a unicorn that knows it all and be prepared to pay appropriately high salary.

  2. Re: Generic engineers? Really? by sinij · · Score: 3, Insightful

    How about hire better candidates? If these are essential skills you expect out of a recent grad, why not hire people with those skills?

    This is the case of unreasonable expectations. Just look at the list : "fundamentals of networking, computing, and coding" from "acoustic consulting engineering firm, consisting of a mix of mechanical, electrical, civil ".

    Does he also expect them to write thier own compiler, all while willing to accept $50K starting salary?

  3. Re:Hire IT Staff! by Osgeld · · Score: 3, Insightful

    other than tone I agree, it doesnt take much to get IT, there's companies that do nothing BUT IT and since its not a full time need to be there position its not that expensive to have a contractor do it

    it may be costly and painful at first as they will have to unfuck your cobbled together by amateurs "network" but once its up and running correctly you wont have very many issues, and if you do, often times they can fix it offsite in a matter of moments

    then your generic engineers can do engineering and not have to waste valuable time (ie money) fiddle dicking with your rats nest of crap

  4. The same way you teach an engineer... by Rob+Riggs · · Score: 4, Insightful

    The same way you teach a generic engineer to build a skyscraper, bridge, ship, rocket, spacecraft, DRAM chip, MRI machine, etc. It's all the same really. Years and years of specialized training gets the job done. And then they can be a software engineer.

    --
    the growth in cynicism and rebellion has not been without cause
  5. All the negativity? by www.sorehands.com · · Score: 3, Insightful

    I agree with the original poster. Here, we have someone complaining that a mechanical engineer, electrical engineer, etc. can't write their own simple excel macro, or figure out why they have no internet connection. This is akin to your car not starting and not being able to figure out that it is the battery and being able to jump it or having a flat tire and calling AAA to change it.

    When I first dropped out of college, I took a job working for a hardware engineer (Seth) at a very small company. If there was a problem, he'd toss me the chip puller and tell me where the scope was. Years later, at one company, they had moved offices and needed to change the IP addresses of a couple of the Linux based workstations. They were waiting for a consultant to show up the following week. I took 5 minutes to do it.

    This is not an issue of every non-software engineer being able to write good quality code. It is an issue of having basic understanding of the tools and being able to simple tasks, like write a macro, or and simple diagnostics? How many of you laugh at people who don't know how to change a tire or jump a dead battery?

  6. Re: Generic engineers? Really? by fuzzyfuzzyfungus · · Score: 3, Insightful

    If they are being paid in a way that reflects their being competent-or-better actual engineers; expecting them to play IT isn't necessarily unreasonable; but it seems pretty dumb.

    You don't want to deal with lousy IT, no matter how much money you 'save'; because that's just miserable; but if you are paying an electrical engineer to spin up EC2 instances or a civil engineer to be poking at a recalcitrant data logger rather than thinking guru-level thoughts about concrete loading, you are arguably squandering relatively expensive and rare talent on problems that a reasonably competent small-shop IT generalist is exactly the sort of person to make go away so that your subject matter experts can do their thing.

    Engineers who can't handle writing(or at least prototyping) simulation code are potentially more of an issue(expecting them to whip out their l33t optimization skills to save you a modest amount of CPU time by rendering the code unmaintanable is often folly; but it's been a while since most engineering disciplines were amenable to calculations entirely on slide rules and legal pads); but even there the value of an engineer who can go from Debian_netinst_x86-64 to 'fully configured numPy environment' is something that is a trifle hard to stress over as long as they know what to do with a development environment once set up.

    I have a personal fondness for generalist tinkering, so I sympathize; but I also recognize that much of my generalist tinkering is purely recreational because it involves either fiddling with stuff that I'm not very good at; or doing things that someone cheaper could easily do because I'm interested in how they work. In this case, I'd be severely doubtful of the wisdom of trying to impose IT stuff on a bunch of actual, went-to-engineer-school-and-are-priced-to-reflect-that, engineers rather than investigate the possibility of finding a reasonably flexible IT/lightweight 'CS' with strong tinkering background person who appreciates the variety of an office too small for rigid specialization and the chance to poke at a wide variety of problems; and making that person available to your engineers for fiddling with peripherals, basic network and systems administration, any EC2 jockeying, etc.

  7. No IT Specialists? by sycodon · · Score: 3, Insightful

    But make sure the ones who actually learn to do it on their own get promoted over the ones who come crying to your senior engineers to reset they whatchamathingy every ten minutes.

    Let's see how absurd that statement is when applied to other areas of business.

    Being a small company we don't have dedicated Finance specialists.
    Being a small company we don't have dedicated Accounting specialists.
    Being a small company we don't have dedicated HR specialists.
    Being a small company we don't have dedicated Engineering specialists.
    Being a small company we don't have dedicated Sales specialists.

    The reality is you better buck up and get one. IT isn't something you can do on the side like some Shade Tree Mechanic anymore.

    --
    When Fascism comes to America, it will call itself Anti-Fascism, and tell you to give up your guns.