What is the best money you have spent on professional development?
I'm a software engineer with a budget for professional development, I'm looking for a good way to spend it.
I'm curious what other people have found valuable, it could be a book, MOOC, conference etc
The single best thing I did for professional development was see a therapist. In tech, our jobs are knowledge-based. You can't hammer a nail into a board while you're sitting on the couch with your child, but you can certainly think about software architecture. I've found that my job bleeds into my personal life, and vice versa, and I believe it is far more common than most people realize. Stress piles up and it affects not only your home life, but your work life.
Taking the time to talk to a professional and become introspective and conscious of my own mental health has provided me with more value than all the books and conferences and talks I've consumed put together.
I once did a two-day workshop on negotiation techniques, which covered not only methods but also helped me to become more comfortable dealing with the psychological stress that's induced in many negotiation situations. So far I'd say the course (which was free as I won it as a prize in a business plan competition) is directly responsible for at least 50-100.000 € of additional revenue that I made in the last years, simply because I negotiated more effectively.
I'd highly recommend honing this skill as it will also help you as an employee, as even small gains in salary can add up to quite a lot of money over the years. For freelancers and entrepreneurs negotiation is also important of course and will greatly help you.
As many others have said, books are the best things I've spent money on, but let me say more:
Do books sometimes say things that are obvious? Yes. For example, when I first read Martin Fowler's book Refactoring, I had been renaming variables and moving methods from one class to another for years. But he gave a new framework for thinking about something that obvious. I've found the idea of separating out my coding flow between adding functionality and improving code really helpful.
Can you get the material for free? Almost always, yes. But it takes time to find the right material, and our time is valuable. A typical industry book is $40-$50, and a typical text book is $100-$150. The authors of these books have spent time organizing the material in a helpful way that you would otherwise need to spend.
For some topics though, it's not just a matter of time savings. I'm working on a topic now that doesn't really have many useful books, so I'm having to read technical specifications produced by industry groups, which lack context and are pretty opaque. I'm missing having a book that explains these ideas in a coherent fashion.
I have tried a few MOOCs for professional development. I've found they can be helpful for a superficial understanding, but they don't encourage the deep understanding I get from reading through a book.
If your budget is a few hundred, an IntelliJ Ultimate license. For me it's a force multiplier. Built-in highlights of things that can be improved (e.g. linting) is a bonus. In the end, things like VS Code are just text editors.
I mean, you can't get a warning that the `[]` syntax isn't available in your old codebase's flavor of PHP (5.2) in VS Code. I think.
Alternatively: Take time off. If you have enough money to live on for a month, take it. Make a list of things you'd like to dig into, or just spend a month doodling. Or take half days off for a month and participate in something like Advent of Code. You can challenge yourself in various ways, like use an unfamiliar language for the month, or a different language every day. Do some tutorials and make stuff in Pico-8, embrace the limitations and embarrassingly unreadable code, which is amazing at the same time because you wrote it and it all fits in your head. Just throwing it out there.
I found that (for me !) it was less useful to invest in learning to do new things, as opposed to investing in being more efficient and / or having my work time more pleasant.
Make your work feel like pleasure and there is no limit to what you can achieve. So maybe don't only think "what can I be better at ?" but also "how can my life be better while I work ?".
Software:
A proper training session with a high level debugger for a language I wasn't used to, debuggers often have esoteric interface and "hidden" features, but learning to use them comfortably will make your life so much easier and pleasant.
Buying a license for a good IDE (in my case, intellij). I use vs code 70% of my time but when I need to work on more complex pieces of code or debugging it just change your life.
Hardware:
Buying a proper "high quality" laptop, notably the screen (real matte screen because screw glares, and 2k/3k/4k resolution because you look at text all day so crystal clear font rendering matters a lot).
A great chair with proper support because my back hurting at the end of every day is not ok.
A switchable sitting / standing desk ( https://www.autonomous.ai/product/standing-desk ).
Quality noise cancelling headphones (Bose QC 35).
I was lucky enough to get paid for this but I'll say it anyway: learning to speak is the only thing of lasting value I have gotten out of startup accelerators.
I would have gladly drop a few grand to acquire that skill. In fact, I'm considering hiring a speaking coach to improve.
I've historically been a strong written communicator, but it turns out that speaking is very different from writing. In fact, I had thought of myself as a pretty strong speaker due to my experience giving scholarly presentations ... how wrong I was. Academic talks are a different beast altogether.
If you haven't seen Patrick Winston's How to Speak lecture [0], drop what you're doing and watch it now. I'll leave you with a (paraphrased) quote from his lecture: your ideas are like your children and you don't want to send them off into the world dressed in rags.
[0] https://www.youtube.com/watch?v=Unzc731iCUY
1. Book: Nonviolent Communication, by Marhsall Rosenberg PhD. Great things are built by teams. The more senior I become, the greatest challenges involve teamwork, and the programming is the easy part. I've read countless leadership and self help books, but the simple concepts in just the first few chapters were absolutely transformative to me.
2. The Fast AI for coders course and associated book. (Maybe this shouldn't be on this list, because it's free, but it's still the absolute best place to learn machine learning from scratch.) This is a book and a set of videos that go over the same material. I work on a team of data scientists, and using information from the first few chapters of this book I've done things that are far beyond the capabilities of my teammates. Unlike most courses, this starts with practical knowledge you can use to do useful work on day 1. Then later it moves into the theory of how it works. You don't need more than high school math to get going.
3. The Coursera Deep Learning Specialization, a set of 5 AI courses. Has a certification you can use on your resume and LinkedIn.
The therapist is a good one already suggested.
Also instead of other PD I would suggest to save (invest) as much as possible as early as possible. A career in tech is very seldom healthy as a forever job so having an escape path is important.
I used this technique to get enough invested by 45 that I could comfortably live on the dividends/capital gains/passive income it generates without ever touching the investment principle. This is a very nice feeling as it allowed me to "escape the grinder."
Telling Eric Schmidt (while at Google) to "go fuck yourself" and walk out the door to never return was the most empowering thing I have ever done.
My career has been much more rewarding since.
I ran a lunch-time book club at work for groups between 3 and 10 people, covering technical topics like programming languages, version control, and so on. After a management change at the company, I couldn't get budget for books or lunches any more.
So I bought the books and bought the lunches.
The most effective way to learn something thoroughly is to teach it, and I was the facilitator for the book club, leading all the discussions and planning things out. The thousand dollars or so I spent per book, which won me sufficiently motivated study partners depending on me to lead, offered much more value than money spent on typical coursework or conventions.
Never mind the value I was providing for the company (lost on the new management, but I felt good about it nonetheless), spending that money was justifiable solely in terms of creating a maximally stimulating learning environment for myself.
Spend $9,000 US dollars to get a MS in CS, Data Science or Cyber Security from Georgia Tech. It's a solid top 10 CS program. It will take a few years, but it is definitely a great investment.
If you don't already have an undergrad degree and/or want a quicker program, look at some of the reputable code/security academies that partner with major state universities. They cost a bit more 15K to 20K but are shorter (typically a year or less).
Finally, there are certificate programs (offered by professional training companies) in security, coding, project management, etc. that cost 5K to 10K and last from a week to a month.
A $5 DigitalOcean droplet/VPS.
There's so much packed in there. A public, static IP and just enough RAM and disk to do anything you could possibly want to. And the relatively low RAM and disk limits does make you think about memory and disk consumption in a way that you're seldom otherwise incentivized to think about it while you're in undergrad.
It's also a gateway to developing working proficiency with linux, which is absolutely a huge multiplier for any software engineer. Just knowing how to grep, sed and 'awk {print $1}' gets you so amazingly far. And on a higher level, knowing how to throw together an nginx proxy or simple postgres db etc is also huge.
As a founder / CTO the best money I have spent is on a really good coach. My coach (my cofounder's too, and now some of our leadership team) doesn't have particular expertise in founding or leading companies, but works with many founders, and she's not technical, but the things I think I have found hardest to learn are mostly around people management and leadership, which I think are underrated skills that require serious development (actually, whether one is in a position of leadership or not). When I think of all the books I have bought or conferences to which I have been, in terms of impact on my effectiveness as a manager and leader, coaching is wayyyyyyyy out in front.
EDIT: actually not just as a leader / manager, but in all areas of my life.
"Designing Data-Intensive Applications" is the best reference I've found explaining the many pitfalls of data storage and transmission. It's especially helpful if your code has ownership of any data (i.e. if you create or modify it), and an order of magnitude more useful if your organization has multiple processes touching a given piece of data.
https://dataintensive.net/
The best money I've spent on professional development is paying to travel to industry conferences at which I was accepted to speak.
Like many people, I was nervous about public speaking earlier in my career. Out of a desire to improve myself and to "give back" to the community, I applied to speak at some industry conferences. Many people think about conferences as TED-talk style luxury events, at which speakers are compensated for their time and expertise. In reality, the only thing most conferences give speakers are a few free tickets to the conference and access to speaker-only events. Travel (and often lodging) need to be bought out-of-pocket.
By putting myself out of my comfort zone and speaking at these conferences, I developed valuable skills that significantly helped my career as it continued to develop. Being able to speak confidently in stressful situations -- to a wide variety of audiences -- is a very valuable skill to have.
In addition to the confidence boost of getting some talks under my belt -- and the actual skill of public speaking -- the networking opportunities afforded to conference speakers are often unmatched. I was able to have intimate conversations with leaders in my field (information security), and learn first-hand how luminaries think about contemporary challenges.
I realize this answer probably doesn't conform to the type of response that OP was seeking, but it's the truth of my experience.
Good luck!
- 15k with an MSc in Data Science after 10 years of professional experience. Key aspects that made this useful for me: I commited to it 100% and went for a 4 gpa as that was the only way to take it seriously, I could do it because of my personal situation and tine availability. I learned A LOT, among other things that I am not that stupid as I thought while taking CS, it was just a matter of interest to me. This gave me my currennt job with a significant turn to my career.
- Spending 2k with a work station
and changing my environment from expensive Macbooks to an expensive workstation and cheap laptops as a front end
I'm a big fan of pluralsight.com (no association). It's only $29 / month USD. I always go back to it when I want to brush up on something or learn something completely new. Not all videos / instructors are created equally of course, but their content has been the most consistent IMO.
Udi Dahan's "Learn Advanced Distributed Systems Design" course.
https://particular.net/adsd
At one point, I was considering paying out of pocket to attend the course. Fortunately, the company I was working for at the time wanted to send people to it and I got selected.
After taking the course, even if I did have to pay myself, I wouldn't have been upset.
That course is outstanding.
For me it has been paying for folks to help pair code with new languages I'm learning has been amazing at speeding up / getting some nuance quickly. Latest language was Rust.
Second, books.
Improv lessons. Seriously. Being confident speaking in front of others and the life lessons it provides ("yes, and") are absolutely indispensable. It brought me out of my shell and advanced me in my career significantly, all while having fun and making friends.
I've enjoyed having an O'Reilly Safari subscription for random access to books. In particular, the Pragmatic Programmer and Designing Data-Intensive Applications.
I've also had good experiences with SCPD courses from Stanford, if your budget would cover those (they are at the other end of the price spectrum).
I don't think there's been any better value for me than Gary Bernhardt's Destroy All Software. I randomly stumbled upon it way back in 2014 when I had just learned my first programming language and was dabbling in Ruby, watched everything, and it made me much better at my job. It was $29/m at the time.
Apart from that, I think maybe one or two books every year. Most of them are pretty poor, but the value of that odd book that totally changes how you think about certain things is pretty high. A lot of technical books also have _really_ good, practical advice that can be applied to day-to-day work if you want to read them. It's pretty valuable to know the technologies you're working with in some depth.
I'll say books period. Every month I buy them, every month I read them, and I let the topics sort themselves out.
The habit I’ve stuck with the longest, which continues to bear fruit:
1. If a book comes to mind, just buy it. No wishlists, no libraries. Feel free to get _both_ kindle and paperback, even the audible.
The returns on this habit are incalculable. I do this at an extreme level, which amounts to about 5k / year. That’s similar to a great gym membership or owning a small car. Expensive but doable.
Somebody told me to go watch a specific course on Frontend Masters and I ended up watching over a hundred hours of courses. In addition to all the valuable practical things I learned, I was amazed at the content and it raised the bar for the level of quality I demand from learning resources. There are a lot of trash courses and books out there that aren't worth the time. Now I vet things more before diving in. That and my Jetbrains all products license :)
> What would you do if you had a million dollars?
> I'll tell you what I'd do, man, two monitors at the same time.
Maybe I have less mental swap space than the average person, but nothing has increased my productivity like monitor space.
Plunking down for an ultawidescreen was the best development decision I've made. Being able to have specs/docs + IDE + search + chat/email open at the same time, accessible with a physical turn of my head, greatly boosted my productivity.
Hiring a tutor to mentor me in a technology I want to learn. Building MVP’s with them to master the tech.
https://every-layout.dev has fantastic free content, but the full $100 for all the materials (book, site, components) has had absurdly high ROI for me. I spent less than an hour's consulting wages, and it's been transformative - a gift that keeps giving. Highest possible recommendation.
(Web dev since 1998)
This may not be a useful answer for you depending on your situation, but the best money I've spent on professional development has been funding sabbaticals between gigs where I engage in deep study on topics that are harder to learn in small doses.
If you aren’t great with your toolset spending time learning your editor/ide .
I spent some time a decade ago learning better emacs skills (macros on the fly). Also getting better with jet brains IDEs. Made me more productive and my work more enjoyable.
I also read some of the “Unix power tools” book from oreilly, to help my command line skills.
Thirdly I had to learn symfony so I signed up for symfonycasts video tutorials and did the first lessons. It was a little cheeky but it really helped getting running. I liked the short lessons followed by actually doing.
Something you're interested in, but don't have the self discipline or resources to learn on your own. For instance I loved math and science but would not have been disciplined enough to organize and follow through with my own course of study. Those became my college majors. On the other hand, I found it trivially easy and effortless to learn things like computer programming and electronics (after the basic intro courses got me started), and have not received any further training in those things, though I use them every day.
So, without identifying a particular subject, match something you're interested in, with a way of teaching/learning, that you're unlikely to be able to provide for yourself. Also, some of those things such as courses at your nearby college, or a conference, have the added benefit of removing you from the daily hurly-burly with your supervisor's blessing.
Not exactly spent, but I gave up $40k/year in salary to go work at a company that I respect, with people that I respect, with a lot of nice benefits and proper work/life balance. I’m much happier with my career now.
As a Python developer it has to be PyCharm Professional Edition. I am a more effective developer because of it.
Aside from college, not much. I've read some books and done some courses and conferences but I didn't find any of them to be the least bit useful. One thing I did in college outside of CS education was a class on voice and diction which really helped my speaking. Absolutely everything I've learned to be good at, I've learned by doing. And that includes programming despite having a CS degree.
Learning new languages. Lots of doors opened, access to a new world of content. Specially for non-native English speakers.
A good chair. If you're going to spend the next 30 years sitting 8-10 hours a day, do your body a favor and invest into a good chair.
Interestingly most things of value I have learned came from free content (Twitter/Articles/RandomGitHubRepos) especially ones that are open source. I guess the fact that community can build up on the content is super valuable.
Books.
I read about 30-100 work-related books a year and have seen salary double every few years.
I try to alternate books between different areas, more or less from these sections:
Technical(on currently used technology)
Technical(unused tech vaguely related and may be useful)
Management
Domain(scientific textbooks, best to search from related university course reading lists)
Biographies/accounts/events of typical and super users
O’Reilly has a subscription that gives access to all of their books. Incredible amount of value over countless topics.
I've found project management qualifications to give the best ROI. I've done Prince 2 and Scrum. Although I've never had a job title of Project Manager or Scrum Master, they've helped me get senior/lead developer jobs just because recruiters like to see those words on a CV.
A slightly different perspective than what I've seen in responses so far.
Best money I've spent on professional development is spending time with people having completely different backgrounds and perspectives to mine.
Some examples include traveling abroad, attending meetups, conferences or networking events, talking with people who have interesting things to say, seeking out resources or people that offer counter points to your current thinking on things.
On this general topic, someone pointed out to me years ago that whenever interest rates are lower than inflation, 'investing in your future' may be the best use for the money.
That could be increasing your salary, making yourself more employable, building your social network, or even finding a pastime that makes you happier than what you usually do with your free time.
Kind of off topic, as it’s instead a tool, but buying a Jetbrains license was a big win for me. If you put in the time to learn it, it really does give you superpowers. You won’t 10x your productivity, think more like 1.5x, but IMO that is huge for something you spend so much time with as a software engineer.
The book “What Got You Here Won’t Get You There” by Marshall Goldsmith helped me become a better, more empathetic, teammate. It’s less than $20, but worth far more.
Stylist, proper clothing and health/gym.
It seems silly, the more you feel like you belong, or general how people think you belong works better.
If you can do the work/job, even better.
Harvard Business Review has a series of collected articles from their magazine composing the "Business Fundamentals Series". It is the most comprehensive, easy to read and condense guide you'll find for doing excellent yet difficult work of any kind anywhere.
Therapy. I've found it extremely helpful in my role as a manager.
Starting a failed startup many years ago, if opportunity cost counts.
The books I buy. I chose my literature very carefully and buy only the best classical and informative texts for personal use. I'm particularly happy about used copies or Indian versions of otherwise expensive handbooks.
Online learning resources such as PluralSight, Udemy, Coursera.
I use to buy courses that were long/complete but rarely finished them; too much basic stuff was covered and/or gone into detail that was a waste of time.
I now buy courses that are 4-5 hours tops and really dig into a topic I want to learn about.
I used this technique to retool my skillset after having a few setbacks in row job-wise; it's incredible the effect of this change in approach has had for me.
I attended a weekend-long T-Group. It's a workshop in sick you get to practice interpersonal interactions dialed to 11 with super fast feedback. It's really hard to describe without it sounding ridiculous. In essence one person says something and then someone else will give them immediate feedback on it. It's hands down the best learning experience I've ever had. It's also very, very hard emotional work.
There is a class at Stanford graduate School of business that follows this. I understand it's their most popular class. At Stanford it's stretched over several weeks. The workshop I attended we've from Friday evening to Sunday evening and was hosted by Jana who also is involved with the Stanford class. You can find the Stafford class and links to others who offer this type of experience here: https://www.gsb.stanford.edu/experience/learning/leadership/...
SIGMOD conference, only been once so far (2019). I am interested in database theory and related hard practical problems though, you may not be.
Two day presentation skills class. The class went over how to present for a large group and how to make slides that are easy to understand. Other topics focused on engaging the audience with stories that are easy to understand. The course concluded with everyone giving a five minute presentation. Feedback on limiting filler words and hand gestures was invaluable
On the cheap side, books, but not all of them. My buys are "hit or miss", lately mostly hits.
I would recommend:
- The Elements of Style, aka, "the Little book". Made me a credible editor (and documentation writer at the time) almost at zero time.
- Zero to One: in-depth, honest, and non-conformist view of the tech startup landscape. "How Google Works" is a close second.
- The Embedded Systems Dictionary. Not in print but the second-hand paperback is worth it. Great refresher, written with a wit.
Another book I use is "The Developer's Guide to Debugging".
In general I like zero-bullshit or more politely, zero fat books. "The Elements of Style" is one. "The Developer's Guide to Debugging" is also very low in fat, war stories and other nonsense.
There are other books that I like that are less influential.
Aphorism: I don't believe in software books. Exceptions are well-researched reference volumes, e.g., "C: A Reference Manual, 5th edition". I believe in undisputed truths, not in one person's preference or experience over another's.
These days I mostly consult manuals and standard documents. Technical books will only give you that much; see them as a vehicle to learn how to learn. Exceptions are again reference handbooks, that will have to be exhaustive.
I don't believe in trainings, fast, slow or anything. Self-learner here, learned reading by myself around the age of 3 (shocking revelation: have you realized that you can only recall detailed memories only after you have learnt how to read?) Actually it was exactly the winter of 1980 (born 1977). I was a serviceable reader by the coming of sprint 1980 and could read subtitles as fast as the adult is assumed to by early 1981. Educated physicist but self-educated programmer.
SuperMemo 18, and some time and patience for figuring out incremental reading and self-driven learning (and the SM interface).
Now it's the 5th edition. I read this a decade ago when it was the second edition. I just the book and was able to then pass the test. This is a great book to learn about security even if you don't care to certify. Judging from many comments I have seen on Hacker News most software developers really have absolutely no idea what security really is. CISSP remains the industry gold standard for security.
WCAG 2.0 - https://www.w3.org/TR/WCAG20/
WCAG is the gold standard for accessibility. Most governments including the US government conforms to WCAG for accessibility guidance and criteria.
Books, Udemy and independent authored content helped me get better at finance and programming.
Fuji cameras are great for daily use and its hardware controls teach you how to take nicer stills.
Manufacturing a real product helped me learn about distribution and inventory– something I'd never be exposed to in tech.
Travel helps me reboot and think about whats really important.
Disconnect for a couple weeks. Backpack or sail.
Pause and reflect.
Designing Data-Intensive Applications.
While my professional life was going well, my personal life sucked. I considered my self a self-development junkie - trying one method after another. I lucked onto a seminar called "The Secret of Creating Your Future". One of its tenets is goal setting. This seminar was an introduction to NLP - a worthy goal. My original goal was to better my professional development, but I discovered that my personal development was improving enormously as well.
Eventually I was enrolled in courses aimed primarily at professional therapists. They certainly welcomed me as they need people to practice with as they themselves are learning new techniques.
This series has enormously transformed both my professional and personal life. Highly recommended.
Going through dataquest.io has been super rewarding. Backfilled a lot of forgotten stats and probability knowledge, math, learned data science python, good sql practice and now going through different ML techniques. Totally worth it if you want to do data stuff.
Nice pen, paper and ink.
I have found I am getting much better results and much less stuff falls through the cracks when I make notes on paper. Nice pen, paper and ink aren't essential, but they make it more enjoyable.
Audible.
I used to fill my long commute times with Harvard Business Review and other similar content. As I already have a bit of experience, these allowed me to connect a lot of dots together.
*
In general most of good advice is not given out freely and learning on your own mistakes costs a lot of time (and reputation).
Be prepared to pay for it.
I pay regularly for access to materials that let me save time and grow faster and for tools that let me do that with less effort.
Not all of them give me immediate results but the ones that do make it all up.
I left a good paying job to start my first startup where I earned 1/3. The startup failed but I learned so much so that I tripled my initial salary in 2 years after the failing startup. Lesson learned? Take as much risk as you can.
Get certified in the technologies your company (or projects use). AWS Certifications, Terraform Certifications. Buy the training material and study it; you don't have to take the test but understanding the technology is worth it.
Books, but then I've always learned best from books - you set your own pace, they are easily cross-referenced and indexable, and to top it all off books are more often than not structured and well-organized. Re-reading is also an option. I point out all these things to contrast books to lectures or coaching, or even videos; they're just not the same or as good as a good book.
As for specifics, if you haven't read it already, "The Pragmatic Programmer: From Journeyman to Master" is excellent and a great place to start, and one of their biggest tips? Read books, at least one per quarter.
Textbooks in general (like academic textbooks, not orielly style books). Work through a textbook or three each year, and once you’re a decade into your career it’s like you have another degree under your belt. Find something you want to dive deep on and instead of reading a dozen blogs, buy the textbook and do some of the exercises as you go. It keeps you spending time in foundational stuff rather than specific frameworks, and it pays incredible dividends. It’s slow as hell, and only really pays off on many year timescales, but don’t discount it for that.
It's geared towards identifying when and how to guide yourself and others through company changes. So, while not specifically tailored for software dev it can definitely help with communication as a whole.
Please don't fund money on any training/book/online. This doesn't work in most cases and might influence incorrectly. Look for ways where you would get more interaction/engagement with skilled and diverse set of people. The lessons should touch your mind and must be hard earned. That's when they will stay with you. Rest of trainings/book take aways are someone else's experiences and effects are very ephemeral and might be incorrect sometimes. The key is to look for deeper experiences.
Buying "The C Programming Language" by K&R back in 1983. :)
1) Tuition for university (600$/semester * 10 semesters)
2) Sublime Text (80$)
Pluralsight got me a job because I better understood how i could automate smaller tasks.
Powershell and python got me off the helpdesk, pluralsight helped me glue it together into SRE skills.
Venture University - just an awesome way to immerse yourself into how venture capital works and what it takes for both the startup and investor to achieve their goals.
So much of our future falls in the hands of companies and investors funding them, so knowing how all of this works is crucial to understanding why and when company's make huge decisions that impact us.
https://www.venture.university/
I would suggest spending any extra time and money you have on doing something fun and helpful. For example, learning to play poker, or chess. Both of those things will tangentially help you in your professional life, but are also enjoyable hobbies. I don't mean to limit it to strategy games. Almost anything that involves some learning will end up being beneficial at some level even if it is not technically professional development.
A few computers, some digiboards, a bocaboard, 12 modems and a T1 to my first apartment in Boulder.
Of course the BBS only lasted 18 months and never made any money but it provided an early (1995) and very in-depth window into what running an ISP would be like and eventually a PaaS/IaaS (or whatever rsync.net is).
In second place for "best money you have spent on professional development?" would be hotel/flight costs for Defcon 6-10.
Not technically "spent" because I didn't pay for it myself, but I took a sales course once (2 days in person) which cost whoever ended up paying for me e3000-ish, but I grew more from that course than any technical courses or conferences I ever went to. Still, if I had to do it again but I'd have to pay myself I'm not sure I'd do it, which is a bit of a contradiction I guess.
Advanced iOS at Big Nerd Ranch, in 2012. It was still ObjC, back then, but it made a big difference.
It was not cheap, but I still believe that it was worth it.
I really don't know. College is the biggest investment I did. But whether it was worth it depends on whether I could have gotten a programming job without it and I'm just not sure about the answer. As for the rest of it, I do have an Oracle certification which is generally recommended for Java developers. But I never spent a dime for that, although perhaps i should have done it earlier.
A therapist, haha. But this was already stated here.
Otherwise?
Hard to say. I think nothing that cost me money has helped me at least as much as the things I got money for.
I got a bunch of certs, but I think they alone aren't any good. Certs, jobs, projects, customers, awards, all together form a picture that you know what you're doing. The more you show, the less people ask questions that are potentially not it your favor.
I think it’s a good idea to invest in courses about negotiation, project management or other interpersonal skills. Toastmasters is also great and cheap. For most software engineers the technical side is the easy part but if you want to survive in a big company you need some level of non technical skills. There are only a few places where you can do well on technical skills alone.
My master's degree. I did a relatively unique (and affordable) program at the University of Oregon that focuses on professional development for scientists and includes a 9 month internship. The program and my internship have completely shaped my professional interests and I think that the program does a really good job of preparing STEM undergrads for careers in industry.
Not exactly what your asking for, but I found that a good roller mouse helped immensely for reducing the strain i my arm due to the mouse.
A course about management and organisational development that used https://en.wikipedia.org/wiki/Psychodrama methods. Self-awareness and people skills are invaluable in software development.
Other than that: rocking-kneeling chair from Varier.
Membership fee to the University Student Computer Association. I got exposed to UNIX (BSD 4.3 Reno) and the Internet as the first HTTP servers went up (the good stuff was still only on Gopher and FTP). I wasn't studying Computer Science or anything close, but I learned so much that I can look back on almost 25 years in IT.
Singing lessons were immensely valuable to me for an unexpected reasons: to really make progress in singing you need to forego a lot of older habits and rearrange your neurons, a process that was apparently well understood by the teacher, and that tilted all my subsequent learning endeavours into "finding eigenvalues".
You could try and see if you are allowed to spend the money on hours to work on a side project. If there's something you really feel like doing, but never get time to do, you could maybe spend a week working on that. Because it's a passion project it'll probably bring you more than any class can do.
Not exactly “development” category, buying high quality tools that I use on a daily basis has been hugely beneficial. JetBrains developer pack in particular, I don’t know the exact name but you get their whole suite of developer tools. I can’t live without two of them at the moment, DataGrip and WebStorm.
For some introductory topics that I don't want to invest a ton of money into but want to know more, I've gotten good mileage on lynda.com, free access via my library.
Some videos are quite old so for topics that move quick like technology, be sure to watch the version of the course that is 1-2 years old
In 2010 I won a ticket to YOW Melbourne. The speakers included Erik Meijer, Guy Steele, Dan Ingalls, and Dave Thomas. If I'd known how good it was going to be I would have paid for it.
https://yowconference.com/
Professional CEO coach. I spent 3 years working with him and it was the best personal development I could have committed to. I learned that leadership is a trainable skillset, and that interpersonal dynamics are also something you can practice and improve upon.
Computer science degree at the University of Florida, which cost me about $5,000 in 1985.
I was always working on laptops ever. But given that travel moved to zero and will stay that way for some time I invested in a maxed out desktop PC that triple boots into linux, win10 and MacOS - a real dream and productivity workhorse.
Reading Getting Things Done by David Allen.
Reading and practicing Test Driven Development by Kent Beck.
Learning about financial independence. The peace of mind that comes from knowing you have your financial world in order is enormous and opens up many possibilities. You are in control once you have 'F--- You" money.
Two things I've focused on improving lately are:
- Improving my typing speed and technique (there are many free web sites to do this) and
- Improving my algorithm skills by doing exercises on HackerRank and Exercism.
for me it was linux academy (paid by my employer of the time) and getting red hat certified (rhcsa).
in order to get rhcsa certified i had to study and learn all of those little details about linux that i had only skimmed previously, and learn some things that i didn't even knew existed (ex: filesystems acl).
Getting Red Hat certified definitely made me a better sysadmin and a devops engineer with a stronger linux background.
edit: since moving on from that employer i'm paying for linuxacademy myself, although nowadays it's not clear what's going to happen when ther merger with acloudguru will be fully done.
Obviously, books!
When I was younger (before my first job), I was spending $5/month for a cheap VPS. I have learnt Linux administration basic with that VPS and I get a job a few month later. So, money very well spent, I guess.
I know it sounds like cliché, but actually my B.A. in Psychology and Business Management. Cost met around $12K the whole university studying but gave me much more than I expected regarding understanding myself.
Cutting my working hours, which gave me more peace of mind and time to study.
Assertiveness training.
The difference between being assertive and being aggressive can be more subtle than you think, but the rewards for you and your team (and your friendships and your relationships) can be boundless.
Laptops and different form factor computers.
Linux is huge and tinkering is how you learn it, I have at least one laptop in an inoperable state at any time...
Other than that travel to events and being able to buy time to study.
$3200 for a Bachelor of CS degree at Western Governors University.
It graduated in just 2 months due to my 10+ years of experience in tech.
I recommend it to every experienced programmer considering getting a degree.
Spend $0 for tuition and third year PhD student in compilers. The best decision I have made. Hated my masters thesis subject which was about lattice based cryptography.
I bought a new monitor (it wasn't expensive), a headphone, comfy chair. I spend half of day at my desk, so I think it was necessary. Also I bought a lot books.
Onsite Workshops in TN, USA.
This is not your typical trainning or practical skills-focused workshop. 6 days of group therapy without access to phone/computer. ~5-6k for the course + room and board. Price has been rising but it's worth every penny.
You explore personal issues through guided group dynamics. You share and listen to others. By the end of the course, you know more about your group partners' lives than anyone you've known in 'real life'.
I learned so much about myself, how to deal with my feelings and the impact my experiences/impressions have on my performance as a professional, family member and partner.
49 day solitary meditation retreat
$1400
I consider the investment on my Masters was worth it. It changed the way I see the world and improved dramatically my writing skills.
Good chair, good microphone, good webcam
Conferences, for the folks you meet and connections you make, not the Conferenc talks themselves.
As a Visual Studio user I find the plugin FastFind to be invaluable. Insanely fast search tool.
Uncle Bobs Clean Code class. In person class over 2 days, shredded a lot of bad habits I had.
$10 or so spent on the dynamics of software development by jim mccarthy.
vistage.com - like an advisory board when don't have an advisory board
Also known as TEC.COM.AU
The Executive Connection.
Was invalubale on my journey
MSc in CS at Manchester University. Life-changing.
Cmon, let’s be honest. A LeetCode subscription.
If it wasn't 2020 I'd say - Travel
SANS training is worth the $$$$ prices.
if you have PSD just use some services to convert it to HTML5. No point hiring a front end developer.
Reforge courses are fantastic.
Reforge courses are fantastic
A decent desktop computer.
I’ll give an example of a horrible waste of money on manager training: Plucky
https://www.beplucky.com/
The whole thing has this arrogant faux-subversive “not your grandma’s manager training” attitude that seeps into every aspect, and it makes a lot of pretense about being candid but in reality it has zero useful or new advice to offer, just rehashing well-known management considerations but trying to retrofit some notion of being more candid and edgy onto it. Most of the advice is even harmful because forcing more confrontational notions of candid behavior into management will not work at all in most large corporate cultures.
Plucky is essentially a way to get your company to pay for you to travel to another city, and mingle with other “edgy” tech leaders, which is insufferable and boring.
1000% do not recommend.
Overseas junkets.
If you are paying for all of it, put the money into the trip over the conference.
Find something community driven so the conference bit was cheaper and it's a good group of people.
Infosec conferences used to be value for money and looked good in interviews. Mix of 3 letter to government to professional to amateur to blackhat people to hang with.
Budget is secondary or not not even needed.
In this age of internet, everything (LITERALLY EVERYTHING) is free out there. All it need is interest, dedication and TIME.
Don't have enough time? Escape the trap of OTT platforms. You will find some.