The Joys Of Programming

S0LIDARITY wrote:

@krev82, I suggest that you find a project that you'll enjoy working on and make a significant contribution. You could contribute to an open source project or make something of your own. If you decide to make something on your own it will show initiative and perseverance, even if it doesn't implement any impressive algorithms. Mobile apps are pretty easy to self-publish but don't really make you stand out anymore. I haven't found many organizations that are impressed by certifications for new hires.

That's because certifications are achieved via multiple choice tests. Real world programming doesn't work that way. You could get a top 10 percentile on the SAT verbal but that doesn't make you a good creative writer.

krev82 wrote:

I don't actually want to be a coder but I'm aware of the fact that I may need to be.

Do you mean that you have career aspirations in another field but are more credentialed for programming? If so, knowing what other possibilities you're considering might help us offer more pertinent advice; if there's a way to bridge your current skillset and your desired career path, by working on a more directly related project, that would probably help you out more than just having some random project in your resume.

Contributing to a open-source project is certainly a Good Thing, and there are some good frameworks that can help you put together a single-purpose web app (maybe also for mobile apps, not my area of expertise). Or you could work on a small software program from scratch, but I'd suggest you keep the scope very small -- a little utility is fine. Or try your hand at a very simple game if you like.

From the hiring side of things, many employers do seem to favor someone who has produced working code over someone with certifications, as Solidarity was getting at. A small self-directed project (or contribution to an existing open-source project) that works well and is written to the best of a junior developer's abilities is a real asset.

bandit0013 wrote:

That's because certifications are achieved via multiple choice tests. Real world programming doesn't work that way. You could get a top 10 percentile on the SAT verbal but that doesn't make you a good creative writer.

My understanding is that some consulting firms like to make bids for projects boasting that they have X number of certified programmers for the intended language of a project and that it occasionally impresses folks making business decisions for the client. Outside of that, I only understand certifications as a good deal for those that institute the test.

@Krev82, whatever you do, don't go for certifications through W3 Schools. That's a straight-up trap.

backstory/explanation;
Most of the tech job postings I see locally are for coders so I'm aware that I may have to do it to pay the bills. I live in a backwards universe where I kinda get fired (from my 8 year stint as an IT person for the university) once I graduate.

Ideally I'd like to do something similar in a better paying and more secure role and once I have the degree I should finally be able to get past HR departments to do so. I have no idea why they think I need to have training in algorithm analysis or the like to be a tech support guy but even with my experience the degree really does seem to be the missing piece. Alas there are generally fewer postings for such positions so until one comes up coding may be all that is available and I want to make sure I'm not missing out on those opportunities simply because my degree happens to be from this uni.

Thanks for the tips all.

S0LIDARITY wrote:
bandit0013 wrote:

That's because certifications are achieved via multiple choice tests. Real world programming doesn't work that way. You could get a top 10 percentile on the SAT verbal but that doesn't make you a good creative writer.

My understanding is that some consulting firms like to make bids for projects boasting that they have X number of certified programmers for the intended language of a project and that it occasionally impresses folks making business decisions for the client. Outside of that, I only understand certifications as a good deal for those that institute the test.

@Krev82, whatever you do, don't go for certifications through W3 Schools. That's a straight-up trap.

Large consulting firms do the following:

1. Hire a few very smart people at the top, these people go with sales to visit clients and wow them with their knowledge and expertise.
2. Get client to sign large, multi-million dollar contract for implementation and customization by the "team"
3. For every 1 skilled person, place 3-5 low skilled grunts on the team, bill them all at a "blended rate" of $150/hr (the grunts only cost the firm $40/hr)
4. Deliberately steer the client into asking for expensive customization, which in the enterprise world the further you deviate from standard config, the more you guarantee a long lasting, repeated billing cycle.
5. Use you big name to move onto the next client and repeat the cycle.

bandit0013 wrote:
S0LIDARITY wrote:
bandit0013 wrote:

That's because certifications are achieved via multiple choice tests. Real world programming doesn't work that way. You could get a top 10 percentile on the SAT verbal but that doesn't make you a good creative writer.

My understanding is that some consulting firms like to make bids for projects boasting that they have X number of certified programmers for the intended language of a project and that it occasionally impresses folks making business decisions for the client. Outside of that, I only understand certifications as a good deal for those that institute the test.

@Krev82, whatever you do, don't go for certifications through W3 Schools. That's a straight-up trap.

Large consulting firms do the following:

1. Hire a few very smart people at the top, these people go with sales to visit clients and wow them with their knowledge and expertise.
2. Get client to sign large, multi-million dollar contract for implementation and customization by the "team"
3. For every 1 skilled person, place 3-5 low skilled grunts on the team, bill them all at a "blended rate" of $150/hr (the grunts only cost the firm $40/hr)
4. Deliberately steer the client into asking for expensive customization, which in the enterprise world the further you deviate from standard config, the more you guarantee a long lasting, repeated billing cycle.
5. Use you big name to move onto the next client and repeat the cycle.

You forgot step 6. Gradually replace the $40/hr grunts with $10/hr grunts in Bangalore.

Zelos wrote:

You forgot step 6. Gradually replace the $40/hr grunts with $10/hr grunts in Bangalore.

Word.

@krev82: I don't know if I can offer helpful advice. All I can think is that I got my job because I aced the interviews. I was able to get the interview because of my stellar GPA. My CS program is darn good for a liberal arts college so I didn't have an impressive name to put on the resume. I was planning on getting a PhD instead of a job, so I neglected to even think about doing an internship.

I had another job opportunity, for an MMO engine developer. I did well on the first phone interview. I bombed on the second phone interview. My brain did not work under the pressure because I failed to prepare. Also nerve-wracking was that I could barely hear anything cause I gave them my cell number instead of a landline (actually Vonage, still better than a cell though); hearing people is important, don't worry about not being instantaneously available 24/7. These people work in an office, leaving messages is normal. And if the job is for C++, they might ask what "placement new" is, you should know that.

So I'm excited! I'm putting together a business plan to start a software developers guild for my region.

bandit0013 wrote:

So I'm excited! I'm putting together a business plan to start a software developers guild for my region.

What is a Software Developers Guild? What do they do? This sounds interesting.

Superbeard wrote:
bandit0013 wrote:

So I'm excited! I'm putting together a business plan to start a software developers guild for my region.

What is a Software Developers Guild? What do they do? This sounds interesting.

It's like the fighters guild in Oblivion. Bandit gives out quests to its members. Quests like, go into the world and find 10 for loops. Bring them back for a reward. After a while you get promoted and after many of such quests you eventually become the guild leader.

Sorry, couldn't resist.

Prepare yourself. Crazy talk ahead.

In 2006 I graduated from a somewhat well-respected university. My degree was a Bachelor of Arts, in Politics, with a minor in Economics. I had no idea what I wanted to do with my life.

I went into finance. I enjoyed playing with other people's money, and wrote some really bad VBA to automate stuff (going as far as having the VBA scrape publicly available data to do charting for me in real time). I took no life lessons from this experience at the time.

Three years after graduating with a degree that taught me nothing I used in my daily life, I moved to San Francisco for funsies. I found a job doing analytics for a middling education services and consulting company. A year in I knew more about the business than the founder/ceo. I taught myself MS Access within that year, rolled-out and sys-admin'ed our usage of Salesforce, and did other technical things. I took no life lessons from this experience at the time.

Bored because I knew more than everyone else but didn't have enough voice in the company to make the changes I felt necessary, I looked for other work. I still had no idea what I wanted to do with my life. I looked for work based on what jobs I thought I could get. They were all incredibly lame sounding. My job was lame sounding.

At the end of 2011 I decided on a whim I'd start a company with my younger brother. He's a programmer, I had ideas, what could go wrong? To this day we have not made a single product or sold anything to anyone or raised any money to do so. But that's okay, because "starting a company" was a good excuse to quit my job in March of 2012. And seeing how unproductive my brother was in his spare time made me realize that I needed to be able to code, because I couldn't rely on him.

I started to learn life lessons about this time. I realized I liked to build things. VBA in Excel to do real-time market analysis was about making the tool to solve a problem. And I had really enjoyed it. Being the tech guy wasn't just the thing at that last job, but the thing I had always been. I'm good at that stuff. Maybe I can do that stuff?

By June I knew this "starting a business" thing was a farce. I went full-throttle with learning to code. I learned with a vengeance. I learned like there was no tomorrow.

Some days I just played games.

I applied to a 10-week program to "learn to code". It cost $10,000. I chose them. Until I found out that a thousand people applied, and they were choosing 50. I freaked out. I got in. I went. Things were crazy. I coded 16+ hours a day, 7 days a week. I barely saw my wife. I never saw any friends. I drank way too much coffee. I met some awesome people.

I realized coding is something I love. And I'm really f*cking good at it.

I secretly started interviewing for jobs. At startups. And they wanted to hire me. Holy crap. Who are these crazy people? When will they realize I know nothing?

I found the company I wanted to work at. I interviewed there. I loved the people, the product. I kissed their asses. I said I was flexible on salary. They said they'd make a decision by the end of the week.

They didn't call by Thursday night. I was so depressed, I shaved my beard. They called Friday. And offered me a job.

Now I work at OUYA. Yeah. This place.

I'm so happy. I work with amazingly talented people. They know their sh*t. I have no idea why they hired me. Don't tell them that.

I haven't been active on this thread much, in part because I still feel like a fraud. But the rare times I've chimed in, you've all been wonderfully supportive. Thank you.

That's awesome, StaggerLee. Congrats!

Great stuff, congrats!

Wow what a story! Congrats on beating the game! heh

That is an awesome story! It's all about practice and learning, and loving to learn as any other skill.

Well that story is both sweet and tight.

Superbeard wrote:
bandit0013 wrote:

So I'm excited! I'm putting together a business plan to start a software developers guild for my region.

What is a Software Developers Guild? What do they do? This sounds interesting.

In general, I'm working off of the following suppositions:

• Career growth in the Information Technology sector has and will continue to outpace graduation rates over the course of the next decade. There is a real, measured shortage of technical talent in the US Economy.

• Compounding this worker shortage is employers’ inability (or unwillingness) to provide directed learning opportunities to inexperienced employees. The repercussion of this attitude is a very high demand for experienced professionals and a relatively low demand for entry level professionals. Employers demand employees who come in the door being able to perform some valuable tasks.

• Universities are failing to properly prepare technology graduates for the reality of working in a business environment. The majority of graduates have no experience with planning & estimation, specification writing, and have never created an application that involved all layers of a true business system (database, services, and user interface). The typical assignment in a traditional course is to load a very small data set, apply an algorithm, and write some output. This does not model enterprise software development.

In short, there's a skills gap. So how do we address this gap? StaggerLee up above paid $10,000 of his own money to take a 10 week bootcamp. I would like to do better. I would like to form a franchise of guilds in different regions of the country that run 12-16 week learn to code courses at no cost to the students. You will have to apply, but if accepted it's free. During the course, students will spend nearly all of their time coding, building projects as a team that mirror common applications like invoicing billing, ETL, CMS, etc. They will learn all stacks of an enterprise application and how to design, create, test, and deploy them. They will do so under the mentorship of experienced industry folk like me. At the end of the course you will have all the knowledge, instructor evaluations, and the code you wrote for interviewing.

Upon completing the course, you become an alumni, you are forevermore a member of the guild and an accepted apprentice. This means you'll always have a place to go to meet, learn new skills, access to peers and labs to tinker. We'll host user groups, special events, etc. I hope to someday have the guild association be able to pool resources for contractors for group insurance, etc. As a guild, we will strive to ensure the growth of our members and all kinds of assistance.

To pay for the facility and instructors, I'm considering a partnership model with firms in the region. Two levels, if you pay the annual fee for the lower level, you get access to the alumni network and for a small recruiting fee (approximately half of what it costs to pay a professional recruiter), you may hire from the network. Not just the current class, but any member of the network, since we will strive to keep life long relationships with the alumni access to the network will become increasingly valuable. With the hire level membership, the company still gets access to the network, but they also get access to the students in the course, basically first dibs at interviewing them. Additionally, they get, a few times per year, to send members of their staff to the facility for training on just about any technical topic they want. During the training the staff will pair up with students and members of the alumni network who can be invited, again to push networking and give them an edge at identifying talent to hire. Higher level partners may hire from the alumni network at no additional cost.

*shrug* it's still a work in progress. My basic thought though is that companies right now are using a poaching model of hiring, only wanting mid-senior folk which is highly expensive and prohibits them from having a good feeder program for the future. These companies have some existing senior talent that they could use to mentor folk, but because they have valuable projects to work on companies don't want to spend the time/resources internally to do it. So they can outsource it to the guild, which will be their feeder.

Brilliant idea! I'm really interested in how this turns out for you. Are there existing examples of this type of model in our industry?

As for funding, I'd also consider a donation model for alumni. Kind of like an optional pay-it-forward thing for the folks who could attribute their career success to the guild. No idea how it would work, but I understand a number of universities do this type of thing.

Superbeard wrote:

Brilliant idea! I'm really interested in how this turns out for you. Are there existing examples of this type of model in our industry?

It seems there are bootcamp style organizations, but nothing with the altruism that I'm looking to build.

Superbeard wrote:

As for funding, I'd also consider a donation model for alumni. Kind of like an optional pay-it-forward thing for the folks who could attribute their career success to the guild. No idea how it would work, but I understand a number of universities do this type of thing.

I've actually considered that, but it would be quite some time before people starting from scratch would be able to handle that. I've also considered doing a couple 4 hour Saturday sessions on various topics open to the public which are "free but a $20 donation encouraged", which includes lunch.

There's also some extra money to be had hosting code camps and mini conferences. First things first though I have to finish the business plan and see if I can find some businesses that would be willing to consider partnership.

StaggerLee- Congrats. Where did you pay to train, curious?

The guild sounds like a brilliant idea, I hope you can get it off the ground.

bandit0013 wrote:

lots of amazing things

Bandit, this sounds awesome. I'd be happy to talk to you about my experience at Dev Bootcamp and the other similar bootcamps in San Francisco and elsewhere, if that would be at all helpful to you.

bandit0013 wrote:

StaggerLee- Congrats. Where did you pay to train, curious?

I went to a place called Dev Bootcamp. They're moving to a 9 week model, with rolling starts, but I got 10 weeks with a group that all started at once.

There's a number of others in San Francisco alone, including App Academy and HackBright. App Academy is free for students, they make their money by getting the placement fee when the students get jobs through App Academy (typical in San Francisco is 20% of first year salary).

I met someone at a group interview who did Dev Bootcamp. It sounded cool to me, but she didn't have much time to elaborate.

Was cleaning up my GitHub repos and started longing to see some old code I'd written, and then realized I still had a CD with the Visual C++ code I wrote in 2004 for my college capstone project (RISK in Visual Basic 6.0). I did put it up on in a repo - figured why not? Found the VB6 code too

trueheart78 wrote:

Was cleaning up my GitHub repos and started longing to see some old code I'd written, and then realized I still had a CD with the Visual C++ code I wrote in 2004 for my college capstone project (RISK in Visual Basic 6.0). I did put it up on in a repo - figured why not? Found the VB6 code too :)

Nice! I probably have old college projects somewhere on my HD. I kind of want to do the same now.

bandit0013 wrote:

Large consulting firms do the following:

Not just the large ones *sigh* :\

trueheart78 wrote:

Was cleaning up my GitHub repos and started longing to see some old code I'd written, and then realized I still had a CD with the Visual C++ code I wrote in 2004 for my college capstone project (RISK in Visual Basic 6.0). I did put it up on in a repo - figured why not? Found the VB6 code too :)

I'm sorry, this struck me as another sort of bittersweet watershed moment. My college projects were on a mainframe that no longer exists. Some of the papers were on 5 1/4" floppies that have long since gone the way of the dodo.

Get off my lawn! Or at least don't do this to people on a Monday.

My C++ code has officially brought tears to someone's eyes?

I'll be putting that on my resume!

trueheart78 wrote:

My C++ code has officially brought tears to someone's eyes?

I'll be putting that on my resume! ;)

Depends on what kind of tears.