I have pretty much committed to the #entrepreneur4life path, so my career goals revolve around extracting the good parts of that. I want to make an impact in my field without losing touch with the typical path. I want to gain more freedom as I grow. I want to be able to commit with all I have to the projects I care about without becoming a workaholic.
A couple years ago I almost took a well-paying job at a big tech company. I almost took it, but I'm happy I did not. My short term goal is growing dev.to to reach its full potential, and my long term goal is to parlay any successes into opportunities to continue to earn the freedom to do the work I am most passionate about.
My advice for everyone is to think long term and just focus on learning and bettering yourself. Don't jump from thing to thing, but don't stick around in a crappy situation. Go with the flow and find ways to reflect on the progress you've made as a software developer and imagine how much more capable you will be with a few more years of progress. But it's not a race. Take vacations and have as much fun as you can along the way!
Love the path, love the tips.
I've spent quite a good chunk of career in corporate marketing and dev. I've worked for a couple of successful startups and I always have the entrepreneurial bug. I've recently changed from full time to part time working from home, to free up more time for learning and coding. Ultimately I'd like to have a SaaS app that can be monetized...nothing pie in the sky, just something that can provide a reasonable income and some flexibility.
I love what you're doing with dev.to -- keep it up! :-)
I always feel a bit nervous saying this but... I've never made plans. I was always the kid at school that when I was asked "What do you want to be when you're older?" I had no answer. My direction has always been dictated by what I enjoy or how I can be of help to other people, which is why my CV reads: Software Dev, Digital Marketing, BMX Coach and Commentator! Loving Maths, Computers and helping people has kind of driven me to that point. And the variety keeps it interesting. If I had one piece of advice, I'd say always try things out despite any preconceived ideas you have about that thing. You might surprise yourself! :)
I've felt that way a lot in my life. I feel like I'm college it was a lot easier to have a plan, but out in the real world it gets a lot less directed and a lot more... Limitless. Which I think makes it harder to figure out what to do. Thanks for sharing!
This is such a fascinating discussion to have!
I got my first job 5 months ago, and realised recently that I was just cruising along without some sort of a mid or long-term plan. Like the OP said, it's so easy to just think about the work you have to do now and forget the future you want.
I honestly don't know what my career goals are right now. Maybe because my programming career is so young that I do not clearly know what is available. I also don't have enough experience with different things to know which would be good for me. So far, there are two things I know for sure I want:
-Work remotely. No debate, I just love having this freedom.
-Be involved in open source. This one is more abstract right now. But, as a self-taught, the open source community gave me so much. The tools, the librairies, the people... I try and will keep trying to be more involved in the open source community. I believe it will take the form of writing code and helpful tools and librairies for others. But we'll see.
I wanna make cool things that people use.
Wow Theodore, this is an awesome idea! I'm pretty sure there're some applications already capable of providing a fully functional linux shell for Android devices. Given that the majority of "sysadmins" likely use linux-based Androids, it might be reinventing the wheel. However, I won't buy an Android device and I would like to get an access to my sever's shell via my iPhone! Maybe you would describe the tech restrictions and some bird-eye's view of a concept in a separate blog post? It might help you in figuring out the right approach to start or continue if you've already started and even attract some people to help you. And best of luck with this!
I've already started working on it: github.com/tbodt/ish. It's not really at a point where you can use it for anything, but keep an eye on hacker news. I should have a prototype on the app store in a few months.
Also I have a new plan that's faster than webkit-based jit: ROP-based jit.
I have a grand plan to create a programming language, Leaf. Slowly but surely I'll get there. In the meantime I'll just keeping working on cool things and writing my blog.
For the other dreamers? Do lots of coding and lots of different projects. You need to find your dream before you can pursue it.
I want to become a high school teacher. During high school, I took several technology related classes, but the "teacher" never taught the class, it was always "read out of the book and take a quiz". There wasn't ever teaching from the teacher. I want to change that because I know there are other schools out there that have the same thing going on. The number of people who took high school classes, but don't understand basic programming concepts by college, is quite large. I really want to educate students.
Once I become a teacher, the first step I'd really like to take is teaching a discrete math class in High School, and make it prerequisite to any programming class. This makes sure that students have a logical mindset before getting into programming, making the material they learn in a programming class easier to understand.
I just finished my freshman year of college. I have a job with the university next year as a lab assistant, meaning I will already be sort-of accomplishing my goal of becoming a teacher! I've helped many of my friends understand some of the programming concepts that they need to know (Objects vs Classes, loops, etc) and I can't wait until next year, when I can teach many more people (and be paid to do it!)
I really don't know. I love my job and I enjoy being challenged. One of the things that attracted me to development was the scope for increasing my breadth of knowledge and advancing my career but not having to become a manager in a traditional career advancement hierarchy. Growing horizontally rather than vertically, if that makes sense. I love learning above all else.
However, I love learning outside the scope of IT as well. My dad has had a couple of different careers, attending university in his 40s so he could get out from behind a desk and that really inspires me. I think eventually, in 20 years (when I'll be 50) I'll want to do something else entirely. Retrain, educate myself and move on. I was pretty late to the development game (late 20s) and while that does irk me slightly, it also proves that I can repurpose myself and that's really important to me.
Short term (5 years-ish) I want to go back to school and get my PhD. I can't decide between a PhD in Computer Science with research in Security and a PhD in Technology and Public Policy. I really want to go into politics and drive policy around cyber security. I'd like to protect the right to strong encryption, but also smaller things. For example, I really think it should be illegal for companies to falsely claim secure practices in advertisements (see: nomx).
Long term, I'd like to be a college professor. I've always really liked teaching and I want to go mold minds at the collegiate level (I tell people it's because you don't have to deal with students' parents in college). I think my heart will always lie in academia so I know that no matter what (if I don't end up in policy and stay in the private sector) I'll end up in a classroom.
I have been contemplating this for the longest time as well and I still feel like I have no definitive answers. But as of right now my career plan is to stay behind the computer and build products that people find useful.
Short term goals is to stay within corporate life enhance my programming and business/social skills. Long term goals would be to break away from corporate life and try to become an entrepreneur. I want to build and distribute my own products because I feel like i can deliver more value to people/community I care for rather than forced to mindlessly debug and build for corporate.
Advice: this industry is huge and amazing so the one way to establish your career goals is to take advantage of the trial and error opportunity. If you have no idea what you want you want to do branch out and see what drives you and what doesn't.
Thinking about this early on is a great way to keep good perspective, especially if you're new to it (like I am!) and still learning what's even possible. My career plan is still pretty vague at the moment, besides knowing that I want the freedom of working with organizations/companies that I like. I want to contribute in ways that are meaningful, I don't want to just make better money. My advice is to be true to yourself and stay authentic to whatever you want to be and do.
I like what you say about contributing in meaningful ways - I feel the same. I fell in love with the web about 20 years ago, it fascinated me how it can bring together the most obscure of communities for discussion but also support. There are a lot of people in our world who are desperate for support in their lives and I feel it my longterm duty to bring people closer together, support each other and try make the world a nicer place.
I love those questions! Talking to another adult about that is so refreshing and more realistic. I wanted to be a vet until I learned (age 10) I had to deal with dead animals as well. Now, age 25, I want to work within cybersecurity, but in the private sector. The chances of doing more and without restrictions are vast compared to the police (in their digital forensics area). That would be my long term goal. For short goal, I want to learn more programming. Like really good. That is why I joined this community!
When I grow up, I'd like to be a data scientist. I find it helpful to frame my ambitions within the ole saying about data scientists: "someone who is better at statistics than any software engineer and better at software engineering than any statistician."
I'm going back to grad school for the statistics half of that statement, so I'm mostly set on that front, but I'll have to be more self-reliant in my off-time to achieve the engineering aspect. That likely means MOOCs, personal projects, and a whole lot of Stack Overflow.
It's helped so far to stay focused on one thing at a time and not get too distracted by the big picture. Learning to code is intimidating enough by itself, but there's the added pressure to do everything extremely fast that comes from all those instant success stories that you hear so much about, at least from an outsider's perspective. Taking a minute to breath and focus on one book, one class, one idea at a time has been key to actually getting anything done.
Great thoughts. Great lesson on limiting WIP. Keep it up! Good luck with your goals!
I have always been looking for a way to help marginalized groups but it never occurred to me that I could use software to help me do this. My optimal position would be me spending time looking at solutions that could help POC, LGBTQ and any other marginalized groups that face challenges. I do also want to learn in the process, I do like programming and the satisfaction it gives me. Building software to help under represented groups would allow me to help towards a solution as well as help me hone my skills as a developer.
This is one of my favorite questions I always enjoy asking myself and whoever related to tech I happen to speak with.
If I was asked before I quit my last job in February of this year I would be absolutely unsure. I had an intention to quit for about 2 years after I’d finally paid off all my debts and started saving money instead of wasting it. The reason to quit was that the job was well-paid, but not fulfilling. I felt bad because there was a lot of stress but no growth. And most importantly, after I first got my paid developer job more than 10 years ago I had never really been sure anymore if I was still passionate about it and if it was a “right” thing to do with my life. It took me 2 years to finally make the decision to quit and take a half-year vacation to calm down and find out what I want.
I guess it has worked out and I’ve come up with a few conclusions. First off, feeling fulfilled and useful is more about how you approach problems than what problems you solve. Both are crucial but I don’t actually believe in anything like destiny unless you’re the one who creates it. So while you’re dealing with arbitrary problems you happened to face, you still want to be enthusiastic, learn and develop your skills and communicate with others in a meaningful way. Here’s a potential growth point: change your attitude and see what happens to your job. Maybe it will become much more attractive than before.
On top of it, I often confused dissatisfaction and disappointment related to the people I dealt with and my responsibilities. In my experience, the right people nearby bring much more satisfaction than the “right” things you do. Apparently it’s much more important to work with people you like and be part of a helpful and encouraging community. Exactly like dev.to. Thanks a lot for being around, folks!
The next crucial thing is learning. I enjoy it even though it took me a long time to figure out how to handle frustration because of inevitable mistakes one makes while dealing with something new and start enjoying the process of learning and its results. Now I’m going to continue my formal computer science/math education to acquire knowledge and skills I need to solve more complex problems. While doing that, I will obviously need some freelance/remote job in order to pay my bills but this thing must stay in the background in order not to substitute a meaningful learning progress with a routine job. At this point, the path I’ve chosen becomes really tough but there’s no other one I could come up with. I’ll just have to manage it.
All that being said, I’ve finally come to the point when I can answer the original question. The career goal for the next 5-10 years is to make (or at least participate in) a profitable software company that ships a useful product that I have affection for. I’ve already planned out building prototypes/MVPs for different ideas I have and throwing them into the wild to find out if people like them or not. I love the idea of meritocratic entrepreneurship in tech!
However, I try to stay realistic and keep my feet on the ground. All these ideas I have might fail. Even if it happens, as long as I manage to stay passionate and curious about the development, keep learning and acquiring new useful skills, make something meaningful and spend time with nice and smart people I will be fine - whatever I’ll happen to do.
For me, it is a crossover path being an entrepeneur and developer. Currently I'm doing iOS and I love it, but I'd really love to learn how to do server-side apps in Swift. Since I'm self-taught, short term plan is to master algorithms and data structures and learn at least one low level language as well. I have a few platforms that I'm developing while still working as an iOS dev in a company. 5 years down the road I'd like to be fully independent. In 10 years maybe do a programming language :)
I don't really know! I JUST became a developer (well 3 years in) so I still feel like 'learning to code' is the biggest thing on my plate right now. I would LOVE to be the lead engineer on a project where I get do do some code/technical work and some people work. Internal facing only tho - I am done with client facing stuff for the moment. That or build beautiful front end story experiences for journalists :)
I'm really good with legacy software. I know that is a weird thing to say but I just have a knack for it. I'd like to get companies running these legacy nightmares into better positions when rewrites are not an option. Working with them, and their team, to tackle it and escape the code and fix cycle. Additionally, I'd like to build something simple that people use and love. It could be anything.
When I grow up I want to retired and do nothing :-)
An advice to young once, try to focus and specialize on early stage of your career. Focus on one thing and be an expert on it. The world/Tech is changing so fast, getting complex, and it is hard to know everything. The recognition and value($$$$$$) is in specializing and consulting.
Even if you are an entrepreneur at heart, get the knowledge and experience first in order to increase your impact and success.
So my old response to this has always been "to be better than I was last week", and this is always going to be a goal for me. But over the past couple of years I've come to really take notice of the fact that a great deal of difficulty in software engineering is rooted in people having to read code that they are unfamiliar with; either because they didn't write it, or because they haven't looked at it for a while.
My goal, at least right now, is to at the very least, influence people to think about simplicity for their future colleagues, or their future selves. Write that nested loop if you must in order to get to a working solution, but then go back and re-write it in a way that future colleagues will thank you for, once you understand the logic. That sort of thing.
In terms of goals in terms of career etc., I have never been especially ambitious in that area. As long as I'm happy day to day, that's all I need. And I'm fortunate enough to work for a company that contributes toward that factor, rather than taking away from it.
I want to change the world for the better... that might sound very presumptuous (and given recent world developments, in vain), but change for the better can come in many small ways. I'm a data scientist developing open source analysis tools in my spare time. If I can make one tool that is used on one occasion to make a tangible positive change I will be thrilled. If this happens twice I will be thrilled twice etc. Rinse and repeat and have fun on the journey...
As I am relatively fresh in the industry, I would love to work remote for a smaller company with big ideas. I want to be able to have enough time to do freelance, my own projects, but still have the stability of a company. I'd love to know as many languages as possible and get away from project management! It's definitely not for me.
Eek! This question makes me so nervous! My #shecoded post goes into my professional background a bit, so I won't rehash here, but I'm just now figuring out my next step. I've taken a great job at a large startup, but I'm not programming in my day job. I thought I could commit to OS in my free time. That hasn't happened. I keep asking myself, "What are you going to do about it?" Anyone care to share an answer that I can take as my own? :D
Not sure what this will look like yet, but I'm keeping my options open. In the short term, I'm staying involved. I want to use my skills, so perhaps teaching a Girl Develop It class?
Long term - I want to encourage others to take a chance on their dreams (channeling my idealistic college-self here) and overcome the barriers and bias that stand in the way of them getting there.
That's the question I've been asking myself lately. I've been a developer for more than 8 years, and I love it, and there's still so much to learn, and so many great things to build.
But what's next?
Ultimately, I think, I'd be happy to grow into a CTO. In my dreams I picture an ideal further career path as coming to a small starting company and with my skills and commitment making it grow into a big and successful one.
Of course, if I can't find such a company, I'll have to start it myself. That'll be my backup plan. :)
To not be a manager :)
As you can probably tell from my asking this question, my career plan is still forming. I don't know everything I'd like to do or exactly the path I'd like to go, but I do know a few things. My short-term goal is to graduate from Georgia Tech with my Master's. Mid-term goal is up in the air. Possibly management, but we'll see. For my long-term goal, I see myself as a CTO or SVP or something along those lines working for a company that actually impacts people's lives.
I'm fortunate enough to work for an outstanding company. The company really cares about each of its employees and the software we make actually makes a difference and has helped save lives. As a result, I have opportunities to explore different aspects of software engineering: from coding to architecture to database to devops to leadership and beyond. If there's something I'm interested in, I can usually find a way to be exposed to it at work. That's been really beneficial as I've been learning and growing in my career.
As for advice for others, I'd say find your passion and pursue it. Oftentimes the only thing holding us back is ourselves. Be bold and go for it. Don't settle for a sub-par job. Find a good employer (or be a good employer) and learn all you can. Do your best and everything will work out. If you do, doors will open for you, in time, and you'll have fewer regrets.
Also, thanks to all who have participated in this discussion! It's great to see others paths and learn from them. If you're just reading this now and haven't shared yet, feel free to add your goals and plans for your career! We'd love to hear them!
Career goals? I just want to keep growing as a person and as a techie. I want to continue to build cool things that help people in their daily life and never find myself too "grown up" to get super excited and giddy about new tech and tools. And as I do so, maybe more people see what I do and want to get involved in tech. :)
A tough but critical question indeed. I personally have always had an interest in software architecture and how system and components interact. In my current job have had more of an opportunity to work with our software architect and had really enjoyed it. At the same time, at least currently, I don't know if I ever want to stop coding so a strictly architecture role I don't think is for me.
I never planned anything, and ended up an enterprise architect. It was either that or senior manager. I never had the risk appetite for running my own company, so I just bubbled up to the level of my comfort (or incompetence).
This question sparked my interest, as I have never taken the time to actually answer this for myself. So unfortunately my answer to this, is I'm not sure. I've always loved computers, I have been a software developer for 5 years now, and I love it. The joy I get when I solve a complicated bug, or the feeling I get when I write an algorithm and it works the first time. These are the small, but very rewarding, aspects of my job that I love. A lot of drive comes from compensation, but if I'm not helping a company grow by providing powerful technology solutions, then I feel my work is meaningless. This is the key for me right now, is wanting to make a difference. I know in the future, I want to be making a difference and helping people in some shape or form!
I love this discussion!
I honestly want to start creating work that I have dreamed about for years. I love working on products as my full-time job but I'd like to build my own product, too. I have a few things going and I can't wait to see it pan out.
Everything is ambitious and I think that's what keeps me going. The other thing that keeps me is seeing people succeed with ideas similar to mine. I wanted to build a Dev-only medium-like site but never committed to it and (wrongly) believed that developers like having their own blogging silos and then check this site out. It's like a dream come true for a developer and for someone who wanted to build a similar product, it's validation that my ideas aren't terrible.
Outside of that, I want to do a ton of game development. I've found it incredibly difficult to get into that space but slowly and surely, I'm making progress. Maybe a decade from now, I'll release a game that I'm really proud of.
As for my advice: I've found it incredibly motivating to use my programming skills to support my other interests. I love writing. I've written 5+ books. But I hate UX of most writing editors which lead to me writing a novel in my own markdown/electron app.
Hoping to contribute to dev tools over the next few months and start committing code to some libraries. Ultimately I want to have my own SAAS company
early retirement when I'm tired of doing cool things
or at least a lengthy sabbatical, followed by probably a complete industry change. maybe teaching high school.
I'll just leave to the Academic world, I think.
Try Warren Buffet's 25-5 rule: linkedin.com/pulse/i-applied-warre...
We're a place where coders share, stay up-to-date and grow their careers.
We strive for transparency and don't collect excess data.