|
I used to and hope to again some day. I do like 1 other close developer contact as a sounding board to discuss roadblocks with. Simply discussing the issue often resolves it in my mind.
I started here as a single developer outside the IT mainstream, we now have 13 developers and we are all still outside the mainstream IT department .
Never underestimate the power of human stupidity
RAH
|
|
|
|
|
I spent 7 years as the lone C++/Win32 coder in a Linux/Java shop and although I felt ghettoized and neglected, I really liked being architect, tester and coder all at once. If only I'd got some of the credit...
Next I was a lone C++ developer in an industial setup with a firmware developer and a couple of hardware designers. I loved that job but in the end I yearned to not be the only person who knew how to fix thousands of lines of mission critical code and fantasized about having someone to ask for help sometimes...
In a fit of curiosity I got a job writing PHP in an ebusiness agile shop. If they hadn't fired me I'd have left, but I did learn to recognize and now avoid 15 minute microtickets, hourly instant message 'standups', weekly performance reviews, video displays with live productivity graphs and remote controlled usb powered nerf canons.
I now work in a small team with responsibility for a key component in a lrge infrastructure project. We collaborate or not depending on what works at the minute. Some of our tickets take 30 seconds, some take 4 months. We don't have standups, we have beer. We're not agile, we're subtile.
I like it. The best of both worlds. Enough rope to hang myself and colleagues to blame mistakes on.
|
|
|
|
|
Not quite a lone developer, but close (and I'm certainly the only one who also does finance, customer support and marketing at the same time. That's what can easily happen when you start your own outfit).
It's a very different pace from the one I endured when I was working in a larger office. No fixed hours (but I have routines that work for me, obviously), 2hr lunch/run breaks most days and quite a few late nights/weekends). I an also of course take a day off without holiday forms and all of that malarkey.
In terms of day to day stuff the way I work is pretty conventional - basically a nest of monitors, dev box, laptop and a pile of servers. I work on (typically) three products, with two live SCC branches for each using (at the moment) VS2008 and Eclipse.
Day to day, the biggest changes are probably the lack of commuting (yay!) and the way we buy stuff - my boss (me) is quite accommodating, so I don't need to spend ages persuading managers "Yes, I actually do need X". The flipside is I have to look at the numbers at the same time, of course. And record all of the paperwork.
Would I go back? Only if I had no other choice or really needed the money (contrary to most people's expectations, starting your own outfit doesn't generally make you rich). In the meantime, I'm far, far more content than I've ever been and the buck stops with me.
I rather like that.
Anna
Tech Blog | Visual Lint
"Why would anyone prefer to wield a weapon that takes both hands at once, when they could use a lighter (and obviously superior) weapon that allows you to wield multiple ones at a time, and thus supports multi-paradigm carnage?"
|
|
|
|
|
I do feel like my own boss at times. But technically I am not. I am not under any of the production (floor) supervisors. My boss is the Director of Operations, who is over all of the production supervisors. But generally, I handle all of my own work, I make my own decisions when it comes to development. I have a lot of freedom and I really enjoy that. My work gets done when it's supposed to be done and I make sure of that. So in my spare time I'm hanging around CP and Facebook, waiting for my next task.
I told my boss on Monday that I had nothing to do at the moment. He looked at a list of tasks he has for me. But he said, "I'm looking at this list and the current list of tasks are waiting on other people before I can assign them to you." I told him, "that's a small problem I have, I don't pace myself; I finish my work too quickly." Apparently that is a "good 'problem' to have", according to him. Haha. That's fine by me! I try and be productive in my slow times. I'm always researching and experimenting with new technologies and such, in order to improve my value as a developer. I'm pretty much carrying the entire PC Refurb department.
As far as my lunch/breaks, I take them with the production team closest to the office (right outside the office). For holidays, unless the entire facility is closed (e.g. Memorial Day), I am still required to fill out a sheet for "optional holiday." No problem though.
djj55: Nice but may have a permission problem
Pete O'Hanlon: He has my permission to run it.
|
|
|
|
|
That sounds pretty good, though I know from experience you have to be pretty structured in the way you work when you've no-one to fall back on.
That, and at least "good enough" at everything else you are likely to encounter that isn't on your normal career roadmap!
Anna
Tech Blog | Visual Lint
"Why would anyone prefer to wield a weapon that takes both hands at once, when they could use a lighter (and obviously superior) weapon that allows you to wield multiple ones at a time, and thus supports multi-paradigm carnage?"
|
|
|
|
|
Right. I feel like I have decent time management skills, as well as attention to detail. I take pride in my work and I work only as quickly as I can while maintaining quality and the fewest mistakes possible. I typically go back and "proofread" my code daily. Even if I haven't touched it in a day or two, working on other tasks for example, I go back each day and read over it. Or I switch to the mock environment and test different functionality. Just to make sure it does work as well as I originally thought it did. Good thing, too.
Today, I was looking at a portion of code which is supposed to put items "on hold" in the database, when the item's components are received into the software. It is supposed to look at the oldest items first when a component is received. And I found out I made the mistake of using "descending" in the LINQ query, which was giving me the newest items first. LoL. And then I realized I wasn't checking "is this item already on hold for the specified component?" So if I received in 10 pieces of one component, the same 10 units would be put "on hold" in the database (inserted into a "Holds" table). But I figured it out.
djj55: Nice but may have a permission problem
Pete O'Hanlon: He has my permission to run it.
|
|
|
|
|
A few years back I was "an island" - the only one doing GIS software while the other seven developers worked on the real stuff (small company, n=40). I enjoyed being a loner at first - got to do research, learn new stuff, create on my own, etc. Then reality kicked me: as a loner there was no design [other than me], no project management [other than me] and very little testing [other than me]. No design meant that what I produced wasn't liked because I designed it. No project management meant nothing was or even could be on time. It sucked. I did good work and produced some really nice, functional stuff but no one was happy.
There. I said it.
|
|
|
|
|
Haha. I do all of the design, management and testing, too. Granted, I have upper management to fall back on to approve designs and other prototypes. When it comes to testing, I always keep a mock environment (database, computer, server, etc.) so I can test in a real world situation as well. And I typically test in the presence of my boss and maybe one or two users. So if they notice anything out of the ordinary that I may miss, they are there to elaborate. I can see how your situation was difficult but I think mine is fairly different.
djj55: Nice but may have a permission problem
Pete O'Hanlon: He has my permission to run it.
|
|
|
|
|
I can see your point. I to have been the lone wolf GIS developer for a water/ wastewater utility district. I built a duty person application that gave the duty person access to our record drawings and side sewer permit drawings. It even had real time GPS tracking. Unfortunately it was launched at the same time a new Operations Director was hired and he killed the project. It sat for about 5 years, but it finally became his idea.
I prototype a lot of applications. I demo them and wait for a response. I wait and search for the problems I see the end users struggling with and then I try to get them to help me build what they want. If I can't get the end users involved I won't throw it away but I won't invest any more time in the project. It is tough because I can see possibilities but know I don't have enough understanding about what the end users do that I can build a useful application without them.
"If you build it they will come" just doesn't work for me, they have to come to me and tell me what they want built.
|
|
|
|
|
tpp@nud.net wrote: they have to come to me and tell me what they want built Indeed.
In my sitch, the problem was a) I needed/wanted the job, b) thought I could work under such circumstances. The boss had a perspective of "Hey, run with it and let's see what you come up with". I should know better. I have yet to find a programmer who sees things the way anyone else [non-programmers] does!
|
|
|
|
|
I must agree with you. I do enjoy working alone. I might not fit the perfect definition of a lone wolf, as we have one other developer, but our projects are our own. I have been working at a water/wastewater utility district for over 10 years. I have created and maintained the Utility Billing System, the front counter cash receipting system, the inventory system, and the operations facility maintenance system. I love the variety and the freedom I have, I sometimes wish there were more resources for testing, and even peer review of the work I do.
I gladly call myself a hack, just kind of piecing it all together. I somehow manage to make things work, thanks to sites like CodeProject.com were samples abound. I love walking through the office and seeing people use the applications We have created together. I tell them they are the designers and I am just the carpenter who tries to build their vison. I wake up every morning excited to go to work and I don't know if that is the norm. I am truely blessed.
|
|
|
|
|
I agree. I feel the same way each day. I truly enjoy coming to work and doing what I do. I like the people I work with. And I like the people I work under. It is definitely a good feeling to walk in and see what you created being used.
djj55: Nice but may have a permission problem
Pete O'Hanlon: He has my permission to run it.
|
|
|
|
|
I'm confused:
"I was moved to IT very shortly after that and I've been writing software here ever since. I've never been to college for this. I've worked very, very hard for the past fourteen years"
So for 14 years you've been in IT? But your solution that kicked it all off used SQL Server 2008?
|
|
|
|
|
No? I've been programming for 14 years. But only at home in my spare time. I've worked here for 3 years. And I've worked in the IT office for a year and a half... And what I mean by "writing software here ever since" is "writing software to be used in the facility", not "just started writing software. xD
djj55: Nice but may have a permission problem
Pete O'Hanlon: He has my permission to run it.
|
|
|
|
|
Random- my birthday is Oct 11th :p
I'm a lonewolf at my dayjob, although I'm college educated (in theory, I learned on my own time as my goal was to be a game developer).
I have a love hate with the solo thing, since ultimately on my side job I want a team eventually and the irony of that is I will lean heavily on the team I'm leading for their experience working in teams. That or it will just be a terribly informal process. For this reason I've occasionally sought out things like Game Jams and stuff (there's one in a week btw) to get with others.
I wish things like source control and style had been discussed more in school, project planning was woefully inadequate. I've personally made a effort to learn more of the 'mundane' and less syntax in more recent years.
|
|
|
|
|
I'm a lone wolf developer, and proud of it, what i like the most is the freedom to make my own choices regarding design and tools, the thing i dislike more is the lack of someone to argue with...
|
|
|
|
|
I’ve been in and out of the lone wolf status over my career. Begin part of a good dev team can really teach you and advance your career. However nothing teaches you like being alone and you career advancement is 100% in your hands. (Well, as much as it can be anyway. Uncertainty is business’ only certainty.)
My last streak taught me the value of directly interacting with my users. It’s difficult to describe how precious it is write a system, then look over shoulders & watch how users actual use it. You’ll end up with as many epiphanies as face plants.
Whenever somebody comes at me with “this is the way you do it” in programming I tend to immediately distrust it. To that end I also used the lone wolf moments to question commonly held believes/best practices. Are foreign keys good in a db, or a waste of time? What’s better n-tier or client/server, why? What’s up with this MVVM thingie?
Also… good programmers are not made in schools, but they are highly educated. Never stop learning. In 2-4 years you’ll probably be doing something new, something you once thought was stupid.
great coders make coding look easy
|
|
|
|
|
It all depends. What do you value most? I do work on my own pet projects alone, but I value being a member of a larger team, because by confronting your ideas with those of others you learn more and faster than if you just do things yourself. Also, since we are all humans and doing stupid things is in our nature, it might be more difficult to spot errors you do in design/architecture, and consequently more costly to fix. You also don't get the benefit of thorough, specialized testing - at least in my team there are specialized testers too.
|
|
|
|
|