>> Michael Donovan: My name is Michael Donovan.
I'm a developer at a consulting
firm in Arlington, Virginia.
I'm, like, also a consultant.
You know, it's not just, I don't just code all
day, but I also do consulting work for clients
and just help them solve problems.
So we build large-scale web applications mostly.
So we'll get hired from, you know, some
kind of, usually we do private consults
or private companies, not government,
and they have some piece of technology
that they need us to build, and we build it.
So usually we'll, the client will come up with
the idea of what they want, and then we come in
and are hired to implement the idea that
they have, and we have to, you know,
the problem is I, we need this as a company
because we have to meet some deadline
to make a lot of money off of it, and we
need you to figure out how to implement it.
So we come in with a medium-sized team, a small,
really, a small-sized team, ten or less people,
and we have to figure out the best way to
understand what they need and implement it
in a timely manner to meet a deadline.
So a busy day is usually where it's
not just one project that I have
to worry about, it's a few projects.
So usually you have, like, one project that
you deal with, and you might have a few tasks
that you're assigned, and you have to get done,
and we usually work in sort
of two-week iterations.
So you have two weeks to
get a bunch of stuff done,
and then we do it sort of
a demo delivery type thing.
But when it's more than just one
project that I have to deal with,
and there's tasks on many projects,
or I have to do my tasks as well
as help others get their tasks done
and put them on the right path,
that's usually when it's the most busy,
and, but I like when it's like that.
I think the, all the different
types of problems I have to solve.
That's what, every day is like a new challenge.
I'm sure a lot of people say that about
their job, but it's true, and it feels great
when you walk in to work, and you feel
like you're going to learn something.
If I didn't, wasn't learning anything,
I probably would want to change jobs
or do something else, but every day
I come in learning something new,
whether it's technology related or
whether it's just how to deal with people
or whether it's getting a team together.
You know, it's always going
to be a new challenge.
You know, it's not like I sit
at a desk and code all day -
>> Right.
>> Michael Donovan: Which is
[inaudible], might be the stereotype.
That's usually, that's really not in the new,
probably within the last, like, ten years,
it's probably changed to where it's
not like that anymore, and it's,
you have a team of people, and it's,
your goal is to just deliver the project,
and delivering that means, it means coding,
but it also means doing analysis,
and it means testing.
It means, you know, designing [inaudible],
you know, coming up with the architecture,
and all that's very collaborative.
So it's not so, yeah, you're not
just, like, by yourself doing it.
It's important, so when I went to school, the
classes I took don't necessarily teach you,
they teach you the foundation
for a lot of things.
They don't necessarily teach, get you, teach
you what it's going to be like when you get
out into the consulting world or doing a more
large scale software development project.
I did take, I took, like, a software engineering
class, which did teach me how to work
in a group, but I would recommend getting as
much, like, external knowledge that you can,
external experience that
you can outside of school.
I had, you know, I had, like, two part-time jobs
when I was working, when I was going to school,
and not, like, just regular part-time jobs.
They were, like, programming part-time
jobs where I had to deal with a client,
and I had to in some cases work with
other programmers to get things done,
and I still have, I still, like,
do work for that now on the side.
So just getting all the, as much
as experience as you can in, like,
practicing your craft is a definitely
something I would recommend.
So that you, I mean, not only so that you know
that you want to do it, but so that, you know,
when you go on an interview you can, people
might have a specific thing they're asking you,
but you'll be able, and you
might not know the answer,
but you can relate it to
your experience that you did.
So I went to University of Maryland.
Graduated in 2010 with a
computer science degree.
And I minored in linguistics.
I picked computer science to
start with so I never, I had,
I picked my major when I first
got here, and I never switched.
I didn't really know, I hadn't really done
any programming before coming to Maryland.
So it was, I was sort of jumping
in without any knowledge of it,
but I found out that it's just really problem
solving, and the technology was awesome to work
with in figuring out how computers worked.
So I really sort of fell in love with it,
and it became more of a hobby than a job.
And then I, once I started taking more
classes, more [inaudible] classes and realizing
that I really liked the team, you know,
not just sitting in a dark room coding,
I like working with a team and figuring out
the best way to solve a problem with a group
of people, then I decided that I wanted to do,
you know, software development consulting work.
I would say that you should totally
do something that you love doing.
You're only going to be good at
something that you love doing.
So if you love programming, then you
should probably look into computer science,
and you should probably look to get a job
in programming, but if you don't love it,
and it's just going to be a job for
you, then you're not going to excel,
or your chances of excelling [inaudible] people
who don't find it, love it or find it as a hobby
as much as others do, but I really think
that in my experience at work and at school,
the people who love it are the ones
who do the best at it, and it shows.
Your employer will notice that
you really love what you do,
and you're willing to work hard at it.