Accept Support Role, or Focus Full-Time on Building Developer Skills?
May 18, 2017 10:04 PM   Subscribe

I have a job offer at a consulting firm for a solutions/support role in the software integrations space. The role involves learning about how large enterprise systems talk to each other using middleware, and providing tier-3 support for these systems. However, I am currently building a freelance web/desktop software development business, and I have started to get real development work. I went down this path because I love coding, and am wary of a support role. I have until next Wednesday to decide. Can you help me think through the pros and cons?

I am young (30-ish), and just starting out in my software engineering career ( < 2 years actual engineering experience, but have very good experience in softer fields, great performance in kind-of-mathy (but not pure STEM) undergrad degree, solid base of CS fundamentals through MOOCs (e.g. I can confidently do time and space complexity analysis), and several substantial projects in my portfolio to talk about). For context, I can (and have) passed online coding technical screens for companies you've probably heard of hiring "senior" full stack web developers (don't ask me why they reached out for me as a "senior" developer, I have no idea), so I am confident in my pure coding skills.

As I mentioned, I have a job offer for a solutions/support role. It would provide occasional opportunities for some dev work, but unclear how much/many/frequent.

I am also currently building a freelance web/desktop software development business, and I have started to get real work. For example, I am hourly contracting with a promising startup that makes web-based tools for other developers. I am helping develop and test a core part of the backend of their app. I just had a code review for an algorithm I wrote and it was a bit intimidating, but the reviewer ended up saying "thanks for explaining -- I like this algorithm" which was awesome/satisfying to hear.

Other important details:
- I am working remotely while slow traveling. The integrations support role is in office in the foreign country I am in now. This country has low English ability. The company HQ is in a country with good English ability, but they have branches scattered across the globe to provide 24/hr support. My English/speaking skills were a key factor in the hiring manager taking a chance on me when I have less engineering experience than my peers-to-be. It would be a cool opportunity to delve further into a new culture, which I am excited about.
- I do not have a masters degree, and as I get more experience with what I like and don't like, I am considering a full-time masters in CS, software engineering, systems engineering, statistics, or some combination of those within the next few years.
- If I take the job, I plan on continuing building my development business on the side. My skills, projects, and clients will just grow slower.
- I've told the startup about my offer, and about my hesitation because of the support nature. They confirmed they have work for me in the pipeline for 4-6 months, but after that they're not sure. They said they would get back to me in the next couple days with more thoughts about where they see this relationship going. I would love try to keep working with them part-time even if I took the full-time job, but am waiting to hear if they would go for this.
- I have no pressing family or other obligations to take up my time.

Assume the total remuneration package isn't important for now, it's more about "what will I learn that will position me to be the best engineer / technical person I can be?" Also assume I'm willing to have uncertain income for the next two years or so, and am resourceful even if the startup gig falls through tomorrow.

I have until next Wednesday to decide on the offer.

- One side of me thinks: "This offer is good. I will try this for a year or so to see if I like it and learn about large enterprise systems and support, plus I'll have an interesting 'worked in foreign country' line on my resume."
- The other side of me thinks: "I got into this career because I love coding. I need to continue to build my development skills/business at least part-time or else I'll feel unfulfilled, and even part-time might not be enough if I don't like support. And what if a support role on my resume will limit future development opportunities?"

Given the above, can you help me think through the pros/cons of accepting the job? Do you have advice about how experience in a support role in the large enterprise software integration space would affect future job opportunities vs experience making a real go of freelance development (and still occasionally applying for full-time dev roles as they arise)? Thank you.
posted by 3FLryan to Work & Money (12 answers total) 1 user marked this as a favorite
 
Am I understanding this correctly:
- you want to be a software developer yet thinking of taking a support job
- you are starting to get actual work for your freelance software development business
- you have a decent CS background from MOOCS
- you have a STEM background and mindset
- you can pass online coding screens

It sounds like your software development skills are perfectly fine for an entry level type of position. Why not keep applying to those types of jobs, because you will find one - trust me. There are not enough software engineers out there for all the open positions. Sure your first job might not be ideal, or this or that, but you will find one which could be an excellent stepping stone. Or who knows your first job might be great.

Heck even interning as a software developer for 6 months with low pay to get some actual work experience under your belt seems better to me than taking a support position.

In reality going from support to development is not easy. I would be very wary of taking the position if you really want to do coding.
posted by Mr. Papagiorgio at 10:12 PM on May 18 [2 favorites]


One con: screeners looking for software engineers might pass over your resume because of the support role, especially if it's the most recent tech job you've had.

If you want to be a software engineer, already have contracting job doing that, and "are willing to have uncertain income for the next two years or so," I'm not sure why you'd take a support job like this.
posted by cosmic.osmo at 10:21 PM on May 18 [6 favorites]


Also, the best way to "learn about large enterprise systems and support" as a software developer is to actually work developing large enterprise systems, since the developers are actually the highest tier of support and often the only ones who can really fix anything unusual. If your support role offer is anything like the support roles I've encountered, it will consist of following rote procedures the developers give you, pushing buttons when told, and maybe triaging problem reports for other people to figure out.
posted by cosmic.osmo at 10:33 PM on May 18 [1 favorite]


Speaking as someone who got stuck in support, don't go there unless you have a clear path to a role/work you're actually interested in or you will learn something valuable. It's really easy to get pigeonholed when you do support and, in my experience, you don't tend to get a lot of respect from software developers for doing that job.
posted by Maeve at 10:35 PM on May 18 [3 favorites]


Am I understanding this correctly:
- you want to be a software developer yet thinking of taking a support job
- you are starting to get actual work for your freelance software development business
- you have a decent CS background from MOOCS
- you have a STEM background and mindset
- you can pass online coding screens


I would say yes on all counts. My actual degree is in not too math-heavy Economics and minor in Philosophy (of the logic/linguistics/analytical type with many parallels to programming). But, for example I've gotten A's in lower master's level stats courses, can understand the calculus underpinning neural networks, and can understand and implement complex algorithms in various languages. I'm not a math whiz, but I have the mindset and I enjoy it.

The logic for taking the support role is 1) interesting international experience, 2) see all sides of software and know early if I like support (for example, there will be occasional on-call work, where I learn whatever I want with not much to do while getting paid half day, then springing into action for an hour and getting a full day's pay, which theoretically sounds really great), 3) learn enterprise middleware system architecture and products and the technology the company relies on such as Docker. Then evaluate if I like this sort of work or not, and move on with more tools in the belt.

But, if it really will hurt my chances for future dev roles, that's a big negative.
posted by 3FLryan at 12:14 AM on May 19


When I first started my CS career, I took a support position that included development. Basically what I do involves a lot of traditional support tasks, but then if I find a bug in our software, I get to fix it, just like I would if I were a full-time dev. I love it. I feel like it gave me the opportunity to step into dev slowly while figuring out an enormous codebase and development standards. A couple of my coworkers have then stepped internally into full-time development positions, where they're at an advantage because they already know the software. I'm not sure if the support position you're talking about is like this, but if it is, I don't think it'd be so bad to take it.

We just hired a guy for support who has a degree in Math, and we were actually pretty hesitant because his education wasn't in CS at all. You can be great at math and not any good as a coder. Your degrees would probably give me pause in the same way, even if you could show me work you've done in the field. A support/dev hybrid role would probably be easier to get into if you're not getting any bites on FT dev.
posted by possibilityleft at 8:16 AM on May 19


Run.

There's something to be said for working in the enterprisey integrations support space. You get to feel like a superhero taking escalations from tier 1 ("Did you turn the integration off and turn it back on?") and tier 2 ("We cannot assist, this is $other_team's issue"). In practice, this means you set up a conference call with 5 teams with 3 native languages and 2 brain cells among the lot of them and sit through an hour of incoherent mutual recrimination before your determine who broke the thing. Then, if you're lucky, they're on the phone already and you spend the next hour listening to them type out XML middleware configuration. If you're unlucky, the person who made the breaking change is now on vacation, or is only available 9am-1pm in a time zone you've never heard of, or works for some 3rd/4th/5th party consulting company that just terminated services for non-payment.

In the rare event a really interesting issue arises, you throw it over the wall to Engineering.

You will learn nothing useful about the creation of software. Your international exposure will mostly revolve around Outlook calendaring. Most importantly, nothing you do will be of the remotest interest to a software engineering hiring manager.

Yes, theoretically you can pursue your own work during downtime. But in my experience, squeezing in side projects between other work was nigh-useless. I spend half a decade in IT trying and failing to move to software. What did it in the end was quitting my job and focusing on making that transition - I learned more in two months than I had in the five years prior.

You're already perfectly employable as an associate/midlevel SE; certainly you have better credentials than I did. Keep your eye on the prize.
posted by The Prawn Reproach at 8:48 AM on May 19 [2 favorites]


I'm a former software engineer and current project manager. You are in a very fine position to go after entry-maybe-mid-level development jobs - if nothing else, having actually done real freelance work and delivered real functioning code will set you apart from many.

This kind of support role can be interesting and challenging and lead to a lot of cool career paths. Software Engineering is not really one of them though; almost anything you run into that has any real technical complexity will be basically taken out of your hands.

I know you think/hope you can continue to grow your dev business part-time, but in practice it isn't always so easy. Full-time jobs take time and energy and focus, even 'easy' ones. People (like me!) who hire contractors often also have a bias against hiring moonlighters. Independent software developers who work on various contracts as their primary source of income tend to be better-focused and are usually available for meetings during business hours more consistently, while folks who are working in addition to another job are more likely to be flakey or not actually available for as much time as they think. There are plenty of counter-examples but - especially for someone not well-established in the industry - it's a risky move to try to do development part-time if you eventually want to do it full-time.

If you don't love support, and you're not in need of a job to pay the bills, don't do support. You love coding, you're being paid to code, you just happen to have not yet landed a full-time position. If you can pass coding screens, and you'd prefer to do that professionally, this job would be a huge step back for and possibly dead-end your career.
posted by Tomorrowful at 10:23 AM on May 19 [2 favorites]


Do they have developer jobs available at this company? I took a job as a noc analyst at a big tech company because I was bored with working for telecoms as a network engineer, and just sort of started coding and scripting stuff and now five years later, I'm a software engineer.

So if this is the kind of company with people wearing multiple hats and changing roles a lot it could be okay.
posted by empath at 5:09 PM on May 19


Thanks for the answers so far everyone.

Seems like it might be helpful to know my would-be team of about 10-12 people mostly have tech degrees, computer science degrees, and computer engineering degrees (from their home, non-English-speaking country), and were mostly developers that have been converted into support. There is some development going on, but it's unclear to me how much. My gut feeling is the hiring manager will value me for my English so I would end up being the guy expected to talk a lot and possibly manage things, but not the guy that's looked to for technical stuff.

I think as someone noted it could lead to many interesting paths. But, I am leaning towards passing on the job, mostly because if I don't immediately need the money, it's better keep on growing and pushing in the direction I think I really want to go.
posted by 3FLryan at 7:51 PM on May 19


Seems like it might be helpful to know my would-be team of about 10-12 people mostly have tech degrees, computer science degrees, and computer engineering degrees (from their home, non-English-speaking country), and were mostly developers that have been converted into support.

Honestly, that's doesn't read as a very good sign to me. It is very much a thing for people who either couldn't cut it as a software developer or who didn't want to keep up to make a transition into a low-development support role to stay employed. For what it's worth, I would quit before being "converted" to support, and so would most other developers I know.
posted by cosmic.osmo at 7:59 AM on May 20 [1 favorite]


I will say that it is difficult to find a remote software development full-time job that's not a Senior role - if you are looking to go that way eventually. If your consultancy is going to take off (or be enough to support you) - great! I would focus on that. It is hard to keep learning what your passion is if you're working full time in a support role. Support can be exhausting and long hours.

I'm basically a junior/mid level developer and would not, not, not take a support role again. All my spare time is focused on learning new development things and furthering my skills.
posted by getawaysticks at 8:09 AM on May 20


« Older what is this short story and where is it from   |   Worried about my friend's immigration status Newer »

You are not logged in, either login or create an account to post comments