38. Contract Work / Freelance Find work yourself Use a headhunter Entrepreneur Start a business Products vs services Continue Academia Degree, Masters, PhD Research & Teaching Career Options
Can make slides available done this session as Q&A, first presentation not talking about anything technical hope you find it valuble
Didn’t start out in software
Great career decent $$ challenging work always learning new things lot of talk of “global meltdown”. Don’t get discouraged. World runs on data, it’s not going anywhere. 60-70k new IT jobs opening up in the next 10 years, only about 8-9000 grads. software development is hard. Expect to spend a long time working at it to get good.
Q: The UK officeOur career choice forces us to concentrate our focus on narrow problems for long periods of time. We forget that sometimes we need to step back, re-evaluate, and quit what we’re doing.
Seth Godin – marketing expert
Passion – Hobby, Ability – Soul Sucking CareerFind the intersection and you will be happy and successful in the long run
The right way to fail is to learn from it and move on
Try one, move on
Q: How many have bragged about spending a lot of time on something (‘I worked all weekend’)Don’t mean to burst your bubble
don’t just keep doing what you’re doing -> innovate! software development is not a game of brute force and ignorance Statistics have shown that the best developers are more than 20X more effective than the worst and produce a lot less code For most, number of years as a developer stops becoming a factor after about 5, so start early! More lines of code != quality if you’re finding that you’re spending a lot of time working on the same problem, take a step back and figure out how you can reduce that time by improving your skills, not just trying harder Don’t spin your wheels- Don’t brag about spending a lot of time, brag about spending little time on solid solutions Automate The best devs I know are the laziest, willing work a bit more now to avoid working harder later
Q: how many Neil Young fans in the crowdDifferent types of music, tries new things, not afraid to failGood role model, tried a lot of things. Always passionate, puts his heart and soul into everythingSan Fran & calgary interview storyWork-life balance
- We have the natural tendency to learn new skills and then hoard the knowledge in the name of job security Sharing knowledge and skills with everyone else makes the entire organization more productive == more success for you teach what you’ve learned, move on to learn something new
Your job is to translate business requirements into technical implementation, but you can’t just sit and codeNeed to communicate effectively w/ everyone, team work very important Other devs BA’s project managers customers… most important. Techies who can communicate w/ customers are worth their weight in gold (good for me)Build solid relationships with people you meetMarketing & PR -> getting the word out about yourself and how you can help, talk about that later
Applying what you’ve learned to solve problems, everything from curing cancer to building iPhone applications Companies are in the business of making money. You need to show how you can save money or make money Save Money: Reduce bugs Save time*** introduced a new way of solving problems Make money: added a feature that increased sales show that you’re not just writing software for software’s sake
Don’t spend too much effort on networking sitesMake in-person connections Join or start associations or networking groups Find a mentor in the industry you want to join Keep in touch with people you already know
Products: create once, sell manyServices: selling your time (Web design etc)
Leverage work terms and contacts to find workOne thing that took me a long time to figure out, two types of workOperational vs Project workOps: Helpdesk Maintenance / bug fix legacy code customer serviceProject: Greenfield Building new solutions new(er) technologyTalk about PR and resume later
When you are a Jr you can’t be picky Look for opportunity for growth (you’re getting the keys to the building) ask, are you working with a good senior person training options? are you on a high visibility project, or stuck in a closet? look for a positive work environment. If you meet the team do other people seem happy and give eye contact? Don’t worry about your title or role, look to expand your responsibilities, build credibility, find something to excel at
You might arrive at a job and find something resembling this everywhere is different, figure it out asap determine the psychology of the group you’re in. Who has power (formal or informal), who can make you successful determine if it’s worth staying if it is worth staying, set the tone for your self right away, first impressions are set early if it’s not worth staying, don’t let it bring you down, life is short, leave
Management – Be careful what you wish for.Lots of people strive for management then hate itManagement is: Budget planning resource allocation vacation schedules meetings more politicsIf you want a technology focused career, try moving around instead of up.Leverage your technical skills to gain a broad skillset in other areas and become a technical leader
A plan to take away
Best Software Writing – http://brevity.org/misc/bestswi.html- Great collection of essays from variety of authorsTopics: Passion for software Funny End-user stories What makes hackers great Leadership Being a great developerPeopleware - http://www.student.oulu.fi/~kkangas/docs/Peopleware.html Reasons projects fail Psychology of project work How people work together, communicate, risks of adding next person to a project How to be productive, real cost of distractions (time to get back in the zone) Chemistry and environment required for growing a cohesive team How to effectively produce a prototype Why employee competition is bad, most effective learning (peer learning) is stifled Effectively introducing change Catalysts for successful projects
The dip Talked about it earlier puts a lot of great ideas into words shortWin Friends old, classic best book for learning how to interact with people makes you think a lot about how others see you get what you want
- Contribute to, or start, an open source project Write articles Speak at conferences Join or start a networking group Participate in contests Imagine CupThrowdown Volunteer (non-profits, events etc)So few people do these things, just trying sets you apartAnyone can do it at any stage of their career
Examples of time when you were curious, learned something new, and applied it to a problem Regardless of whether you succeeded or failed, what did you learn Companies are in the business of making money, name a time when you came up with an idea that either saved time and/or money, or made money Made a difference, taught someone something list results, not what were responsible for, what did you achieve? reduced defects? improved communication amongst the team? saved time or money, or made money lists of technologies are ok for headhunters