|
I recently made a shift away from IT towards development. I was in a technical systems analyst/support/DBA/product guru sort of role for about five years and gradually took on more development responsibilities. I left that company to pursue development full time. My title right now is technically "programmer," but I think I'd eventually like to be in a "software engineer" or "architect" type of role. Basically, I love the whole process of software development, but I REALLY like the bigger picture side of identifying business needs and/or deficiencies in current systems, then determining how to re-engineer them or build new features and products to fill gaps. I consider myself a competent, but not amazing coder. I don't have a CS degree. I see my current role as a chance to improve those skills, but I'm never going to be the guy that eeks the most out of every single CPU cycle, or busts out a brilliant algorithm in no time. That's just not where my interests lie. Am I right in thinking that an engineering or architect position is where I should be aiming? If so, what steps can I take next to move into that kind of role? My current position has opportunities to move into a tech lead or management position, but there's nobody in an architect sort of role that guides the long-term vision of the product.
|
# ¿ Jan 19, 2011 06:26 |
|
|
# ¿ Apr 26, 2024 16:30 |
|
Contra Duck posted:It sounds to me like you'd rather be a business analyst. That's basically all about identifying requirements and designing solutions for them. No, I really don't want to be a BA. I want to do the requirements and design AND coding. I like coding, I'm just more interested in solving problems with my code than writing "the best code ever." Hence why I don't think I want to be a pure coder.
|
# ¿ Jan 20, 2011 01:28 |
|
csammis posted:I've found that doing all three of those things by yourself leads to (a) blind spots or (b) lack of attention to one or more of the three which leads to (c) crappy results. Gathering requirements especially should be done by someone who has a keen knowledge of the solution space but not necessarily the potential coding solutions (lest the gatherer [un]intentionally ask the customer leading questions). Yeah, I certainly wouldn't expect to do all three in a vacuum on my own, but I would like a position that has ample opportunities to do each. The projects I've enjoyed the most are the ones where I got a few different experts together, I presented my ideas, and then we picked them apart from every angle to really hone the concept. unixbeard posted:You should check out this book This is helpful, thank you. Perhaps I'm underselling my development abilities and my interest in coding, though. I really do enjoy coding and definitely want to get better (it's why I took a full-time programming job) and fully expect to get better. I'm just more of a high-level systems thinker than something like a low-level performance guru. I expect it to take years to work towards that type of position, and just want to make sure I'm on the right path from the start!
|
# ¿ Jan 21, 2011 02:00 |
|
Jick Magger posted:Here's a rather odd (to me) question. Go to the Coding Horrors thread, pick out your favorite bad example, then use that. You can tell your interviewers you like it because it's a great example of how NOT to do something, you can explain what's wrong with it, then talk about how you would do it and why your way is better.
|
# ¿ May 10, 2011 23:37 |
|
Mobius posted:I recently made a shift away from IT towards development. I was in a technical systems analyst/support/DBA/product guru sort of role for about five years and gradually took on more development responsibilities. I left that company to pursue development full time. My title right now is technically "programmer," but I think I'd eventually like to be in a "software engineer" or "architect" type of role. I figured I would follow up on this from January... I think I may have been underestimating myself when I started this job. Seven months into my first full-time development job, using a language I hadn't touched in almost a decade (Java), my manager informed me yesterday they're making me a tech lead for a new customer. On top of development, I'll be responsible for system implementation over the next year. They're also going to bring in a couple other developers to help me. They won't report through me for HR purposes, but I'll be responsible for reviewing and approving their work. I was hung up on the fact that I didn't have the CS background that a lot of people have and couldn't do things like immediately crank out a textbook example of an efficient search or sort algorithm. It turns out those things don't really matter that much in a lot of business apps. Here's what I've leared DOES matter: 1. Write code that works (and actually does what the customer needs). 2. Deliver on time. 3. Write code that's maintainable. 4. Write code that doesn't bring the system to its knees. 5. Build screens that are usable. 6. Document your code well. 7. Take on additional projects when things are slow. 8. Work well with others. 9. Learn new things without having your hand held. A lot of people seem to struggle with #1 and #2, let alone the rest. I've managed to do these things, and I think that set me apart. If you can manage to demonstrate through your resume and interview that you can accomplish these things, then a lot of people will be willing to take a chance on you, even if you don't have the exact technology background they're looking for. Mobius fucked around with this message at 19:10 on May 14, 2011 |
# ¿ May 14, 2011 19:08 |
|
Mike1o1 posted:Thanks for the follow-up, it gives me some inspiration that I can make a similar transition from BA to Developer. In my previous job, I worked with the team leads to become a part-time member of the development team. After a few years of that, I had several completed, released, projects that I could put on my resume and talk about during interviews. So yeah, just get some projects under your belt however you can.
|
# ¿ May 15, 2011 03:56 |
|
No Safe Word posted:And don't be surprised if you hear "except singleton" for the design patterns question Is that because they're so simple or because they're pointless? I had never used singletons before my current job, and I keep coming across them littered around various parts of our codebase. I get the point of a singleton is to restrict to a single instance of the class, but I just don't see how they're particularly useful. I especially don't see how our code benefits from them.
|
# ¿ Jun 9, 2011 06:34 |
|
pokeyman posted:I give up. A train programmer? C'mon, man, it's obviously trainer. Duh.
|
# ¿ Aug 26, 2011 01:55 |
|
NotHet posted:I'm graduating in December, when should I start applying to jobs? Is there a good rule or is it more case by case? You should have been applying already.
|
# ¿ Oct 26, 2011 23:59 |
|
Pweller posted:Read this today That hits close to home because I signed a non-compete in my first job out of college. I didn't really give it much thought at the time. I liked the offer/company, and signing it was a requirement for employment. Well, a few years later, it turns out that, due to the experience I picked up, I was EXTREMELY valuable on the market, either working for a customer or as a consultant. But I couldn't do anything about it, because I couldn't work for a customer in any capacity for one year, including as a consultant through a third party agency. It was a very broad non-compete, and the general consensus was that it was unenforceable. But that didn't matter. The company also had customers and certified consulting agencies agree not to hire anyone that worked for them. So, basically, nobody wanted to get on their bad side and you were locked out, anyway. It made job hunting a very frustrating experience because there were a plethora of open positions, all paying significantly more than I was making as an employee. In the end, the job turned pretty toxic and I needed out. I took a pay cut when I left because the better paying jobs were off limits.
|
# ¿ Nov 4, 2011 04:32 |
|
|
# ¿ Apr 26, 2024 16:30 |
|
There are important psychological concepts behind good UI design that you'll never really get by just tinkering on your own. If your goal really is to go into front-end development, the HCC degree could be very helpful. Especially if it includes things like cognitive psychology in the curriculum.
|
# ¿ Apr 11, 2012 05:10 |