5 ms·
Ask HN: Dentist looking to switch to software engineering. Any tips?
I'm a 34-year-old dentist that is looking to completely switch careers to software. It is not because of the pay, it's just that I don't enjoy my job and I've always been fascinated with computers. I have saved up for two years' worth of living expenses and some extra savings to pay for schools or bootcamps. What do you recommend? Any books, schools, bootcamps?
Thanks.
- dual_basis 7y agoNot a recommendation for how to learn software engineering, but rather a suggestion because I know your industry: team up with a good software developer and build a SaaS to replace Eaglesoft.
- disliketeeth 7y agohahaha! It gets the job done, though!
- dual_basis 7y agoI'm quite serious. It is a very badly written piece of software with a huge amount of legacy code. The moat for new competition is wide, because it requires knowledge of all the intricacies of dental practices as well as agreements with insurance providers and hardware manufacturers, but there is also serious money to be made here, as I'm sure you know. Your knowledge and background would be extremely valuable in a consulting capacity to a software team. I have often contemplated doing it myself, from a software engineering point-of-view it is low-hanging fruit, it just requires someone to do the legwork of logistically connecting it with the existing dental tech infrastructure.
- disliketeeth 7y agoThat's definitely true, but I'm really sick and tired of anything that has to do with teeth. Let me know if you want to work on it and I might be able to give you some feedback as a user!
- dual_basis 7y agoFair enough :) My recommendation would be to check out CS50: https://www.edx.org/cs50 https://www.edx.org/cs50
- sn9 7y agoSeconding CS50. This site can fill in the rest: https://teachyourselfcs.com/ https://teachyourselfcs.com/
- new4thaccount 7y agoDo you already know how to program? If so, what languages and how proficient. It sounds like you've been thinking about this for awhile, but don't rush into anything. There are some edx online courses for free and plenty of programming books to get you a little experience to see if you even like it. Bootcamps might be able to get you a job and they actually focus on more of the practical building of software, but a computer science degree still looks better to many employers from what I've heard. Having an advanced degree already might help fill that void though. If you haven't programmed before, you may not actually like it. I'd recommend doing some small to medium sized projects first to also get a feel for it.
- disliketeeth 7y agoThanks a lot for all the tips! I only know a little bit of JavaScript, not nearly enough to get an entry-level job though. I've been thinking about getting a degree in CS.
- new4thaccount 7y agoJavaScript is useful and pretty much the language to learn for web programming (frontend development) if that is your cup of tea (php is another option). If you're writing business applications, you'll want to know something like Java (although they both have Java in the name they are completely different languages), C#, or maybe Python depending on what you're targeting. At some point you'll be dealing with databases and will have to learn SQL. A lot of business programming is what they call "full-stack" in that there is a web portion (often in JavaScript), a server portion (often in Java although there are many options here) which represents the "back-end" and a database which stores the data. Doing embedded development on microcontrollers? C or C++ are both good. Data Analysis? R, Python, or Julia and SQL will be a lifesaver. Scientific programming? Python, Julia, Matlab/Octave/Scilab, Fortran, and C++ are all helpful. In short, there is a lot of tools, languages, and frameworks out there. Don't let that freak you out though. You'll learn as you go by starting in one area and probably picking up pieces of other areas as you go.
- philshem 7y ago
- nellypat 7y agoI switched to SE in my 30s too! I strongly recommend building a few projects on your own. Helps with learning AND getting a job! Good luck.
- sergiotapia 7y agoPair up with an engineer and build a terrific dental software package.
- Nomentatus 7y agoIf you haven't programmed, and don't have a strong math/logic background, beware. This is a bit too much like deciding you're going to be a concert pianist at 34. I've only known one person to try a similar career move, and she crashed and burned. General IQ isn't quite what's needed.
- nellypat 7y agoAgreed. Software Engineering is not the answer to all the career questions in the world. I understand that OP has interest in the field, but it pays to be a bit cautious.
- tptacek 7y agoSoftware engineers would dearly love this to be true, but I see very little evidence that it is. I've worked with late-career switchers and I've worked with 16-year-old interns and all points in between and have seen no correlation between age-at-first-contact with this field and aptitude. We are not concert pianists. Incidentally, concert pianists are probably also not concert pianists, in the setting you want this comparison to apply. Yes, if you want to play with a major orchestra or win a classical grammy, you probably need to have been playing since you were 4 years old. But virtually no-one in our field operates at that level (despite a large cohort of developers who think they do); we are, almost all of us, constrained more by our environments than our potential. If the market for concert pianists was isomorphic for that of software engineering, a late-career switch to concert pianisting would also be reasonable to contemplate.
- kasey_junk 7y ago> software engineers would dearly love this to be true No we really wouldn’t. What I’d dearly love to be true is lots & lots of people to be given the opportunity to try the basics of writing software & the more complex stuff to be taught more plainly. Even at the outer edges of the industry complexity spectrum we gatekeep way too much.
- tptacek 7y agoMy advice is to be careful about the terminology you use. I'm guessing from your brief question that what you really want to be is a software developer. The industry variably calls people who that work "developers", "engineers", and "programmers", but on a message board, people gate-keep "engineering" --- if you're not especially interested in formal methods, which 90% of software developers aren't, you're not looking to do the thing the gatekeepers might be saying you shouldn't do. "Developer" is the most neutral title you can want. My best guess as to how to move forward: pick a high-level language --- Ruby, Python, or Javascript (Node), but not Rust, Go, Clojure, or Haskell. Find a straightforward project that interests you and learn how to build it. If your project takes the form of a Rails or Django application, you'll have an especially easy time self-teaching yourself. I would earnestly try to get this done before considering any kind of boot camp or paid class. People will be quick to point out that you're only N% of the way to being a software developer by getting to the point where you can bang out a Django or Flask application, and they're right, but you're 80% further down the path of learning how to learn software development, which is the important thing to optimize for. The trick after getting that far is to keep ratcheting up your ambitions, so that the next project you do is harder and a better learning experience than the last.
- yitchelle 7y agoOne thing to consider which industry you want to focus on. This might be interesting because many aspects of it is different. ie time to market, size of team, complexity etc. It all adds to how much you will enjoy your transition to software.
- p0d 7y agoYou could be a business waiting to happen. I can imagine with your experience you could identify problems in the field of dentistry which need solving. Why not consider partnering with a developer and come up with a solution? There’s nothing to stop you teaching yourself at the same time.
- hackermailman 7y agoWhat you should do is remain a dentist but develop a hobby rewriting the terrible software dentists have to use, then sell it to other dentists you know. The other day mine was complaining about his Microsoft based XRay software, and his appointment keeping software looked pretty frustrating too.