3 Replies - 671 Views - Last Post: 14 May 2017 - 04:08 AM

#1 CyanPrime  Icon User is offline

  • New D.I.C Head

Reputation: 0
  • View blog
  • Posts: 1
  • Joined: 13-May 17

In need of advice about where to go in the programming world

Posted 13 May 2017 - 04:24 PM

Hello,

I've been coding for around 10 years now, mainly as a failed independent game developer. I say failed because nothing ever really
came of all that work except being quite good at coding/scripting. Which can probably get me somewhere in general programming, but game programming requires working on projects for years, buying assets like graphics/music (if you don't make them yourself, or have a team - which I am lacking), and various other things.

So, now I want to try my hand at just programming/development, of the non gaming kind, but - and this is going to sound stupid - I have no idea what moves I should make in order to be able to work as a freelance programmer. I've got some things on GitHub, and was thinking of making some basic applications to kind of show that I know how stuff works, like a simple Calculator in C# (Using WPF), but would that just be a waste of time? Do people look at that stuff when considering a programmer for something?

Another problem is I don't really have any non-gaming ideas for programming. It's easy to come up with a new game concept, but trying to think of an app idea that someone hasn't done, or that I could do better just draws a blank in my mind.

So, I decided to join here to ask, after spending a few hours trying to select a programming community.
Thank you for taking the time to read this.

Any chance I can get some advice on all this?

Is This A Good Question/Topic? 0
  • +

Replies To: In need of advice about where to go in the programming world

#2 macosxnerd101  Icon User is online

  • Games, Graphs, and Auctions
  • member icon




Reputation: 12174
  • View blog
  • Posts: 45,241
  • Joined: 27-December 08

Re: In need of advice about where to go in the programming world

Posted 13 May 2017 - 04:37 PM

Why does it need to be freelance? You could always get a regular job as a software developer. A regular job pays well, and has the promise of steady/long-term income.

Quote

I've got some things on GitHub


If you've been working on non-trivial projects (something beyond a standard freshman level CS assignment), you're probably fine. I would think about cleaning up your projects, to make sure the code is presentable and you are happy with how potential job interviewers will interact with your program. The other point to consider is this: what is your goal with a particular project being on GitHub? What do you want to demonstrate to potential employers? This should guide your presentation of the project.


Quote

and was thinking of making some basic applications to kind of show that I know how stuff works, like a simple Calculator in C# (Using WPF)


I would avoid exercises like these.


Quote

Another problem is I don't really have any non-gaming ideas for programming. It's easy to come up with a new game concept, but trying to think of an app idea that someone hasn't done, or that I could do better just draws a blank in my mind.


Personal projects should be just that- personal. If you love computational biology, focus on that. If you are excited about game programming, do that. Folks tend to work harder on projects about which they are passionate, and the quality usually reflects this.
Was This Post Helpful? 2
  • +
  • -

#3 jon.kiparsky  Icon User is offline

  • Chinga la migra
  • member icon


Reputation: 10714
  • View blog
  • Posts: 18,348
  • Joined: 19-March 11

Re: In need of advice about where to go in the programming world

Posted 13 May 2017 - 06:19 PM

I second the suggestion of full-time work. Working on a team with experienced programmers sounds like it's just the thing you need - as long as you can find the right team. This might take a little doing, particularly since when you're looking you really don't know what the right team would be. However, this is what the interview process is for, and if you trust the people on the other side of the desk to make good decisions and give them good information then you'll probably wind up in something like the right place.

Getting the interview is the tricky part, especially for someone new to the market without much resume to wave around. One useful trick: talk to recruiters. A good recruiter is motivated to find you a position (that's what pays their salary) and is interested in finding a good fit for you. If they're good at what they do, they'll send you to interview for positions that they think will be a good fit for you, and that's probably a good thing for you. It'll cost you nothing in the end, so there's not a good reason not to try it.

It's also useful to answer questions on stack overflow, for a number of reasons. One reason is, this helps a company find you and to get a sense of what you like to talk about. A person who's actively answering python questions is interesting to a company looking for someone with python skills. It's also good practice for working: you have to see a problem and express a useful solution to that problem quickly, and you get good feedback from others also answering that problem.

Answering questions on DIC is also helpful for similar reasons. The two complement each other well - the pace is a little more relaxed on DIC and the discussion tends to go a little deeper if the topic warrants it, and you have persistent interactions with other programmers, so it works a different set of brain muscles.

Quote

Another problem is I don't really have any non-gaming ideas for programming. It's easy to come up with a new game concept, but trying to think of an app idea that someone hasn't done, or that I could do better just draws a blank in my mind.


If you don't have a personal itch that you need scratched, try looking for open-source projects that you use and see if you can fix bugs or write/edit documentation for them. Getting involved is a good start. It's easier to change course if you're moving than if you're standing still. I do not recommend the common suggestion of "find someone that you think deserves your help and offer to make them a thing they need". You are probably a good programmer, but not yet a good software engineer, and there's nothing good that comes from having an unskilled engineer and an unskilled client trying to collaborate on developing a useful product. On the other hand, if there's a project already working on some software on behalf of an organization or cause that you support, this could be a good opportunity to get used to working on a team.

(there's an assumption here, on my part, which is worth questioning: I'm assuming you don't have a lot of experience working on a team. Is this correct? If not, then you have something of a step up on many other people in your situation)

Another way to hone your skills and potentially gain some attention is to work through one or more of the interesting problem sets out there. Project Euler if you like mathy problems, Rosalind.info if bioinformatics sounds like fun, or codeval.com if you just want general-purpose interview-question sorts of problems. Ideally, you'd be able to demonstrate a non-mediocre score on one or several of these problem sets which shows a certain amount of ability and dedication. This will probably also lead you to develop a bit of toolset to help with solving some of these problems, which is a good exercise in its own right.
Was This Post Helpful? 2
  • +
  • -

#4 tlhIn`toq  Icon User is offline

  • Xamarin Cert. Dev.
  • member icon

Reputation: 6507
  • View blog
  • Posts: 14,377
  • Joined: 02-June 10

Re: In need of advice about where to go in the programming world

Posted 14 May 2017 - 04:08 AM

I also agree with working for someone else. Having been a freelancer for 10 years I can say: Its nice after a decade of all the weight being on your shoulders, to be able to have someone else be the "idea guy", the "sales person", the "marketing person", the accountant {...} Its nice to be able to just be the "code monkey" with group fringe benefits and insurance etc. Go in at 8, come home at 5, and leave it all behind you when you walk out the door. You also pick up so much good help, tips and technique from working on a team.

That being said, I don't know your situation. Being freelance meant I could continue to be a "full time RVer" and work anywhere. No schedule. No commute. No office clothes. (No paid vacation). You can't put a price tag on that. Or maybe you need to work from home for other reasons.

Working freelance doesn't have to mean just selling your own idea. I've often said "Anyone that can't see an idea for new software or a place to make a sale is going through life with their eyes closed." I can't walk into a place of business without someone b!tching about the software. Barber wishes they had more modern stuff. Insurance agent wants something to reduce their filling of forms. The RV park that needs better reservation software. Girl Scouts need something to track orders and payments. Plumber needs something to better estimate a job. Just talking and listening was how I found jobs for years.

Since you're not used to working under that model, where someone else is defining the job and the needs you might start close-to-home. Ask your brother-in-law what you could make for him. Maybe your hobby is gardening: What can you make to better monitor/track/photograph/share your hobby? Maybe your kid's scout troop needs something to track permission slips, food allergies and other per-scout data tracking. Once you get the basic scout tracker done you'll see how it would be nice to add mobile-phone integration... GPS tracking so you can't loose a kid... bulk messages out to the parents. That kind of 'feature creep' is invaluable when it comes to seeing all your early architectural flaws that didn't allow for growth.

Now... What if you do both? There is no reason you can't work for a company Mon-Fri... And do side freelance work in your free time. Creating medical software for a company pays the bills... Creating cool one-off things for side clients pays for vacations/retirement account.
Was This Post Helpful? 2
  • +
  • -

Page 1 of 1