
Ask HN: What should a 16 year old Python hacker looking for "a job" do? - aviraldg
Hi there, I'm Aviral Dasgupta (http://www.aviraldg.com), a sixteen-year-old with a interest in web development (in Python) and a passion for solving problems.<p>I'm not looking for something big (I already do some open source stuff); just something that can either give me practical experience or the kind of cash required to fund my own projects. So, do you have a project you need done? Please tell me about it here.<p>Also, what should I do next? What should I learn?<p>Thanks.<p>More about me:<p>- Started developing when I was 11 or 12, with PHP and created a (rather simple) Twitter clone.<p>- I was a Grand Prize Winner in Google Code-in 2010 for my work with open source software. (http://google-opensource.blogspot.in/2011/02/google-code-in-grand-prize-winners.html)<p>- Involved with quite a few open source projects like Django (Python), Tux4Kids (C/SDL), OpenIntents (Android/Java)<p>- Here's my SO profile: http://stackoverflow.com/users/152873/aviraldg<p>- I've got quite some experience developing in Python (and Django), I've also done some front-end stuff with JavaScript.<p>- I'm currently dabbling with Flask, SQLAlchemy and data visualization and working on a top-secret project (which requires aforementioned funding.)
======
endlessvoid94
I'm going to give you pg's advice to undergrads: get good at building things,
if you want to do a startup later.

If you want a job at a software company, you'll want to get good at reading
other people's code and fixing bugs in older, larger codebases. Ensure you are
an effective communicator by practicing your writing skills
([http://www.mcsweeneys.net/articles/the-ultimate-guide-to-
wri...](http://www.mcsweeneys.net/articles/the-ultimate-guide-to-writing-
better-than-you-normally-do)). The ability to speak and talk to other people
(and in front of them) will prove invaluable, especially in an industry that
still is saturated with people who are poor communicators.

If you need practice on building things, check out the "Somebody Make This"
subreddit (I'd like to it, but reddit seems to be down at the moment).

My email is in my HN profile -- shoot me a message. I might have a small
project I can hook you up with.

------
alanpca
I was looking for similar advice when I was your age, unfortunately HN wasn't
around at that point and information was more scarce. Kudos for using these
tools to your advantage.

The most important thing you can do is build experience. I would keep working
on open source projects, and try to engage yourself into popular ones to build
a career direction that is impressive (the Django work is a great start here).

As far as a job, you're 16 and I'm going to guess your costs are very low.
This is the perfect time to work on building a portfolio of your own work, as
well as doing the aforementioned open source work. If you can get a fair job
with low hours, look into the opportunity. At age 16, I fear a lot of people
are going to try to take advantage of your youth to pay well-below-market
prices. Do you have a need for money, experience is more valuable at this
time?

Other random advice: do well in school, and invest a percentage of any money
that you do make.

~~~
aviraldg
Thanks for the advice. You're right about the costs bit, but I have a few
projects of my own that require the money (which is more than I can afford on
my pocket-money.) So, I'd love to do a proper web development project for both
the experience and well, y'know :)

------
neutronicus
Get involved in academic research. You'll be able to use your skills, and
they've usually got money to throw at talented young people. If you can find a
local university with a Human-Computer Interaction Studies program, you can
get useful UX experience, if you want to get into the big-boy numerical stuff,
you can look at Physics or Engineering departments, I'm sure a Computer
Engineering department would love to have you, the list goes on.

If you're not hell-bent on being a capital-E Entrepreneur at 16, why not step
outside the web development box and hang out on a college campus where you
might have some fun?

My 2c.

~~~
aviraldg
Nothing around; I live here: <http://en.wikipedia.org/wiki/Jamshedpur>

------
pimeys
I would suggest doing something else than payjobs until you're over 20. Enjoy
your youth, do lots of open source stuff. You have so many years to spend in a
squirrel wheel.

I would love to have an option to just lay around at home and contributing to
open source.

------
ZephyrP
6 years ago I was in your shoes, I was certainly not of anything remotely
resembling "advanced age" (14).

I was wholly without opportunity. I endeavored in various fruitless directions
before my first real success (inasmuch as a 14 year old can be successful).
The biggest bump to my career (also all-around credibility) was the first open
source project I ever did ( <http://zv.github.com/work/swiftcrack/> ). When
all was said and done, I made around $5,000 shooting the shit about wireless
security to people interested in my work. This was huge for me, and set me up
for being taken much more seriously. I'm firmly confident that none of them
had the remotest clue I was 14. Had they known, I'm sure I would have been
laughingstock and never given a serious chance. There is something to be said
for concealing your age and making a solution where your elders make excuses,
this is your paramount strength. I will imagine for now that you aren't
interested in the politics and subtle ego-stroking that accompanies a lot of
business, which gives you the power to actually get things done as a pace that
will have your superiors dumbfounded. Suffice to say, hard work can fix hard
luck.

This said, (if you are interested in learning Erlang) I would be more than
happy to help you along if you'd like to be a part of developing my open
source NoSQL database, Artifact. You gain experience developing your own
database in a language that people take very seriously and you get to be a
part of an open source project. You know what they say about birds and stones.

------
zapman449
I guess it depends on what else you're doing. If you're in High School still,
suck it up and finish with high marks and be done.

As for college, there are two theories on that: on one hand, a college degree
from a good school still caries a lot of weight with people, and it's a great
networking tool. You'll meet some great people as well, and you might even
learn something (though at your presumed skill level, you probably won't learn
much of value until your junior/senior level CompSci classes. More valuable
might be hitting CompEngineering or Electrical Engineering instead.

There's another theory which says 'skip college, do a startup', and there's
lots of good reasons to take that route as well. It'll be less fun, more work,
but possibly more lucrative, and you'll have much more 'working world'
experience when you're done than your college friends.

As for 'what should you learn?' My MO for that is 'when in doubt, go deeper in
the stack'. Those who truly understand the entire architecture of computers,
and know how to drive the maximum performance out of it will always be in
demand.

Also, work on the people skills. Learning to be a better communicator and how
to connect with people will never be wasted. Negotiation is a skill to work on
as well.

~~~
aviraldg
I'm still in High School. It's _extremely_ boring.

As for the "deeper in the stack bit", I've gone all the way down to assembler
(don't ask, I wanted to program for the Game Boy; wouldn't do it again even if
someone paid me _a lot_ of $$$)

Never been too good with people though, but I'm working on it. :)

~~~
zapman449
Trust me. I get it. But if you don't have the HS diploma, it'll be something
you have to explain for YEARS. People have certain expectations for others,
even in high tech. The HS Diploma is one of those things. The college diploma
still has a lot of the same stigma, though it's weakening. This stigma is a
risk you'll have to weigh in your college or startup decision as well.

As for 'deeper in the stack', well, learning assembly in various guises is a
good first step. Understanding how the pieces fit together, and how to make
things faster is the next. I'm not sure if you're ready to start absorbing
Knuth and the Art of Computer Programming (for reference, I'm not sure I am
either), but that might be a good start too.

Oh, and another thing: understand the math. Learn the math behind this
computer stuff. Understand how to measure the complexity and cost of a given
algorithm. Something that might help there is Project Euler. It's something I
enjoy hacking on when I have free time.

<\-- hopes my children learn to code like you have.

~~~
aviraldg
I gave up on TAOCP after the proof of the first algorithm (which is around 2-3
pages long!) It's still on my TO-DO list :P

------
sunkan
I will hire you. We are a bunch of awesome developers working with some of the
best tech startups in the valley. Two of our developers are in India just like
you and work remotely. Email and my company info are in my profile.

~~~
masonhensley
Your email is not visible in your profile. You may want to change that before
the two of you are not able to connect.

You have to put it in the text field where your linkedin/ website are listed
to be public.

~~~
sunkan
Thanks, fixed it. I already spoke to the guy on Skype.

------
desertfox508
You've already got multiple languages under your belt and have been developing
for 5 years, so you are probably in the top 1% of developers your age. By the
time you are 26 with 15 years of coding, you will still, no doubt, be among
the top 1% of developers your age. I agree with the other comments about
finishing high school, but in your free time, focus less on developing and
instead focus on expanding your horizons by talking to people who are
different from you. Who cares if you drop to only top 10% of developers your
age by the time you are 26? Do you think most people who have the money to
fund you can tell or care? Ideally if you come up with a brilliant startup,
2-3 years in, you shouldn't even be coding anymore.

I was in India last year for my developer's wedding (He operates out of India
and...that was the first time we ever met face to face) and from the
conversations with his friends, it was strange for me to learn that
entrepreneurship on a resume is looked down upon by companies there.
Basically, once you quit your job to start your own startup, there is no
turning back to corporate life. So I can imagine the wall you are running
into. But here is my suggestion, expand your understanding beyond your own
personal world by talking to people who don't share the same background as
you. There are hostels or places where backpackers from other countries
hangout at in your city. Go talk to them and listen to their perspectives on
anything and everything (backpackers love talking to locals). That's where
you'll figure out what you can do to help change the world. PG once said that
the most powerful people in the world are developers with ideas. good luck!

------
peter_l_downs
I'm 18, and you seem a bit more experienced than me, but here's my advice:
find something you're interested in working on and do that. You've already
found this — your open source work — and that's great.

I spent two summers during highschool working at a physics lab. I understood
very little of the physics but learned a _huge_ amount about programming —
data collection, shipping, and analysis in particular. I'm sure any lab would
love to pay you for your help.

Something else you could do is take a look at the Hacker News Jobs board [0]
and look for a company that is working on something you're interested in. Even
if they're not advertising for an intern, it might be worth it to send them an
email. That's how I got my current job.

You're clearly very good at both programming and impressing people (these are
_both_ important skills! [1]). If you're really in need of some money to fund
your side projects, turn to Craigslist and offer your services as a tutor,
maybe in more things than just programming. Again, this is something I did
that worked well — adults will easily pay you $20/hr. if you know what you're
talking about.

[0] <http://news.ycombinator.com/jobs>

[1] <http://carl.flax.ie/dothingstellpeople.html>

------
sashahart
You are looking for work. While someone should take interest, maybe nobody
will take you seriously or find it easy to hire you, because of your age
(sorry, I've been there).If you do contract work, be careful to get the
agreement in writing.

The key thing for the long term will be to aggressively seek cool internships
every year you are in college and (unless you have a better specific idea) get
a comp sci degree at some place which is known and has a culture and setting
that suits you. That shouldn't be any real problem, if you want to do it.

If this is what you love, there's nothing wrong with doing it at any age. If
the job thing doesn't turn up, just take on fun projects using new tools and
produce SMALL publishable units. This gives you something to show and more
experience with the whole circle of software life.

If you have a lot more time than money, you may be able to engineer your
secret project to be able to start on a leaner budget. Don't be too
discouraged if things don't work or you screw up.

You have a good start and you have access to advice which I wish I had. Take
advantage of it. The beer, LSD and girls will wait. Good luck.

------
ghc
If you were located in Boston (or SV), you'd probably have your pick of
startups that would give you a paid summer internship. The best thing you can
do is get involved in your local startup scene. Most of us doing software
startups don't care much about age or education level. Passion and portfolio
are far more important.

~~~
aviraldg
Ah, unfortunately there aren't any startups around where I live. Would anyone
be willing to allow me to work as an intern remotely (btw. I'm still in High
School)

~~~
ghc
I would, but only as an unpaid intern. Dealing with payments to India is too
hard for a fledgling startup. Maybe you'll find a more established company to
pay...but as a Python/Haskell hacker I could at least offer you intellectually
stimulating work :).

~~~
aviraldg
How can I contact you?

------
cldrope
Unfortunately, Hacker News is a site for generic tech news (random sob
articles occasionally) and startups, with the emphasis on startup advice/etc.

A few months back I tried asking for programming advice (language, direction,
and even job aims help) but it was barely paid attention to and quickly voted
down.

I think you're better off finding a local user group (which will have better
advice as per your local climate) or asking on a strictly
programming/development website.

Advice I'd give is to continue making things, put them out there. People see
them, use them and you become known. Perhaps a company will want to get some
extra support or features on it. Otherwise just keep learning, even at 16
winning a competition you're likely still not quite ready for full massive
applications. Get your practice in instead of requiring a job to train you and
you'll be worth double the pay.

------
Nate75Sanders
Somebody here should hire this guy remotely.

He's unlikely to get taken seriously face-to-face because of his age, but his
projects/accolades actually mean something to the people here.

There's a shortage of devs. Somebody could use him.

~~~
ghc
I actually think it's harder for most companies to take a chance on someone
remotely when they're so young.

~~~
garethsprice
Don't tell them your age, then. Age discrimination is illegal so they can't
ask how old you are and you don't have to tell them.

I was contacted by a well-known men's magazine when I was in my teens
regarding some blog/Usenet posts I'd written. They wanted me to go to a
conference in the US and cover a story for them. The initial e-mail thread
went very well then I made the mistake of admitting I was 16 on the first call
and never heard back from them.

Covering a conference they'd eventually have figured it out - but with dev
work the client need never know your age and as long as you are legal to work,
they need never know.

~~~
krobertson
Actually, not telling them may be illegal too.

This isn't legal advice, but as someone who worked when I was a teenager,
parent consent may be required, so then they'd know you are a minor.

Under US Federal law, it is illegal to work under the age of 14. 14 & 15 can
work but only during non-school hours. 16 and older are fine, but under the
age of 18, parental consent is required.

Taken from: <http://www.dol.gov/dol/topic/youthlabor/agerequirements.htm>

The illegal-to-them comes from hiring child labor without the proper consent
or regulations met.

------
cdcarter
You're on the right track, but do be careful of burnout. Get a job out of (or
just slightly related) to industry. Work in a local computer repair shop, or
even an ice cream shop. In my experience it was hard to find programming gigs
that would pay a 16-yr-old minimum wage hourly and be worthwhile. But a
"traditional job" will certainly, and I cannot impress how useful those
customer relations skills were for me.

------
aw4y
beer? girls?

------
ckluis
You mentioned doing this because you have projects that you think need
funding? 2 questions: 1) how much do you need? 2) with your chops/age a
crowdfuned solution might work for you.

I think plenty of devs on here would be willing to toss you a few $$$ for a
well defined project.

~~~
aviraldg
1\. Enough to: a) Pay for a VPS (I'm currently running test software on a
t1.micro EC2 instance -- free for the first year) b) Pay for any shipping
costs/losses while I figure out if the idea's viable (it's a partially digital
and partially physical idea) c) To upgrade my development hardware. I don't
want to sound bad here, but I currently develop on a netbook. (which I won
here: <http://www.tcsitwiz.com/images/2010_kol_runner_big.jpg> \- I'm the guy
on the right) d) Advertising costs?

2\. I did think about that, but popular services like Kickstarter et al are
not available in India.

------
shrig94
I'm working on a startup that is joining a top ranked accelerator next month--
we're looking for interns to help us with the site.

email me, shrig94@gmail.com, if you're interested in hearing more

------
orangethirty
I'd say play with embedded stuff to push your skills further. The arduino is a
good simple start. Or you could go with a mini2440 board that runs linux
(android too).

------
zaidf
Please shoot me an email: zaid.farooqui at gmail :)

Or msg me on gtalk.

------
onlyup
You're obviously talented so I would recommend getting involved in the start
up scene in your area.

~~~
aviraldg
Unfortunately, there isn't a "start up scene" where I live :(

~~~
discordance
I'm curious about this. Do you know any other passionate or capable developers
in your area?

If so, how about reaching out and forming a local scene?

~~~
aviraldg
Well, I did know one or two people but they're in college right now.

~~~
kracekumar
I am from India, and I can understand how you will be discriminated by looking
for projects or job offer(99.99% this will happen).

Since you have awards which is worth bragging to get you want you need.

1\. Create open source project which can be simple library and ask for
donation.

2\. Teach people programming.

3\. Tell them how you are able to achieve this.

4\. Best is try to be intern in some webshop, only option is send a note in
mailing list.

Main issue you might face is with banks.

------
speg
Freelance? Pick up some simple/easy jobs on eLance or other.

~~~
aviraldg
No, thanks. Most of the listings on that site consist of projects trying to
clone major websites on shoestring budgets. Plus it looks really shady. I may
be sixteen, but I do have some self-respect.

(No offence if you were genuinely trying to help, but that's just what I
think.)

------
ebbv
Find non-profits and other worthwhile organizations in your area who need help
with fairly simple things and donate your time to them. This will get you
experience and build up your CV.

