from Hacker News

Ask HN: Been in the IT industry for 10 years with nothing to show for it

by OulaX on 10/31/21, 12:13 PM with 61 comments

PRE-DESCLAIMER: I apologize if posting such rants and discussion threads is against the rules of HN.

DESCLAIMER: This post can be quite long for some people, and I get it if no one wants to read it, but I would be grateful if you don't downvote me, maybe someone who's actually willing to help might see and answer me, because quite honestly I've been stuck in a terrible rut and I need some professional help.

Some Information About Me, I am 25 years old, and I live in a third world country (Iraq to be specific), the city I live in almost has no software-based startups / companies, also goverment work in IT is very very very difficult to get due to the amount of corruption there is, what I am currently doing is some freelance work, sometimes a client comes and wants a very basic static website, and I build it for them (Using a premade template from ThemeForest, because I am not a UI/UX designer). Sometimes a client requires a mobile app, so I stich together an app by following tutorials here and there, even though most of my stuff works, they are by no means professionally made, nor scalable or maintainable, I just need to do these jobs in order to get some cash flowing on, otherwise I would have nothing to depend on. I have gotten my CS degree last year when I was 24, and currently I have a BSc in CS. I have been coding 10 years ago, but to this date I haven't built something that I can be proud of!

I am stuck in a rut trying to specialize in a niche and keep on improving myself on that particular area.

I have tried Frontend Web Development but quite honestly I really hate working with CSS, it's not the syntax that I struggle with, it's the fact that making a site responsive really really is something I hate, I mostly hate working with UIs.

When I was in college I really loved working on the console, I built great apps using the console, and I quite enjoyed what I was doing! We were learning C++ at the time, and working on the console made me think about my logic, my code, my idea, instead of sweating about the design, or how a button looks, or how to make text appear good on all screen sizes.

I want to try out Native mobile development but I am not sure whether it would be the right choice for me or not.

I am stuck, and there's so much on my mind that I want to speak here but I can't explain them easily without going too much into the details.

I really want a hand guys, and would be willing to answer or comment on any ideas or questions you might have!

EDIT: Sometimes I also think coding might not be for me aswell! Maybe I made the wrong choice, but there are times that I enjoy coding, especially when someone gives me a problem or an assignment to solve.

  • by numair on 10/31/21, 2:22 PM

    > When I was in college I really loved working on the console, I built great apps using the console, and I quite enjoyed what I was doing! We were learning C++ at the time, and working on the console made me think about my logic, my code, my idea, instead of sweating about the design, or how a button looks, or how to make text appear good on all screen sizes.

    > I want to try out Native mobile development but I am not sure whether it would be the right choice for me or not.

    You like writing native code? I am assuming, like most people in your country, you’ve got an Android phone. Become the master of native Android dev, which you’ll love because it allows you to leverage the stuff you used to enjoy. It’s totally free, just takes time. Once you’ve done this, you can build stuff that average people can use on a constant basis. That’s step 1.

    Then, pick off ideas that are poorly translated for your local market or ignored, particularly in areas where foreign multinationals would either want to invest/buy what you made to add Iraq to their world domination map, or use the thing you made as an advertising channel into the young and growing population in your country. Consumer goods, financial services... there’s lots of categories. Test your apps and ideas on your dumbest relatives to get a sense for whether you’re building something “normal” people want.

    Keep working those dead-end jobs while doing this. Get enough traction within your local area where foreign dollars can see how their added dollars would help you “capture the market in Iraq” for what you’re doing. Use that capital to grow and exit, then help others do the same, then keep doing it. Congratulations, you’ve become the Non-Evil version of the Samwer Brothers[1].

    1: https://www.wired.co.uk/article/inside-the-clone-factory

  • by gregd on 10/31/21, 2:50 PM

    Just curious what you expected to show for doing something for 10 years? Progress? Improvement? CEO of MAANG?

    You repeatedly say "I am stuck". What does that mean to you?

    What does "being proud of" something you've worked on, look like to you? I've been in this business for 26+ years and NOTHING I've done in my career, would qualify for being "proud of". What I AM proud of, is the person I've become, the relationships I've fostered, the children I've raised.

    I get that this career choice can seem overwhelming at times. I've tried to specialize more than a few times, but it didn't work out. Primarily because I was chasing the money. In other words, doing what paid me and paid me well because I have a family to support.

    Honestly what you've posted above, sounds so much larger than your career.

  • by jstx1 on 10/31/21, 1:16 PM

    You only graduated last year, the expectations for having achieved anything aren't that high. Just because you started coding 10 years ago, doesn't mean that you have 10 years of industry experience (or maybe you do and you haven't made that clear).
  • by fifticon on 10/31/21, 2:50 PM

    No great insight from me here, but you make it sound like you would much prefer to work on backend/server stuff. A gateway to that might be full-stack, if it's not possible to directly transition to back-end developer. Some people may view full-stack as "holding two jobs instead of one", but it doesn't necessarily have to feel like that.
  • by codegeek on 10/31/21, 4:38 PM

    You are 25, graduated last year and you think you have 10 years of experience since you are coding since 15 ? How much real world experience do you have ? Dabbling in code since 15 is good but that doesn't give you the experience to say "nothing to show for it". If anything, use that as a positive but you need to lower your expectations from yourself. You are inexperienced and have almost 0 real world experience.
  • by tarkin2 on 10/31/21, 2:05 PM

    Work on projects you want to use? I do that. They're nothing spectacular but I enjoy using them regularly. I use work as a source of income. I'm reasonably proud of the things I've done. But many work-projects are in some kind of buzz-word fever-dream or end up hitting the pan because of politics. I realised it's my own projects that I should be proud of.
  • by Jugurtha on 10/31/21, 1:47 PM

    There's a startup called Manara (YC W21) that connects engineers in the Middle East and North Africa with global tech companies.

    Here's their Launch HN: https://news.ycombinator.com/item?id=25849054

    Here's their website: https://www.manara.tech

    I wrote a little Twitter thread that contains tips for people who want to do consulting/freelancing that you might find useful in the meantime: https://twitter.com/jugurthahadjar/status/131066829330549965...

    I am not unfamiliar with the government problems you describe, and I'd stay away from government work (whether that be getting a job in a state run entity or working on projects for government run entities).

    What you can do to increase your revenue and get to a better place financially and mentally that affords you more options and the ability to think:

    - Re-sell the product you built for one client to other clients in the same sector. Example: you built a static site for a pharmacy, make a bundle and go after pharmacies so the product is already made and you can close sales and generate revenue from the same code base.

    - Find more clients: you can generally get a list of operators from the chamber of commerce or governing bodies for certain activities/professions. For example, you can get a list of all registered pharmacies and then sell your already-made product to them. Your pitch will be tuned because of all the conversations you'd have had with them.

    - Build additional things for additional problems in their workflow to get a suite (either at the feature level, or in separate products).

    - If what you built is for a role that's present in several sectors, target other sectors as well by targeting the roles as opposed to the sector, but it may make sense to focus on one sector at first.

    - Charging more for your services: qualify clients, weed-out hagglers, continuously audit for what went well and what didn't and try to reproduce the good interactions/projects/clients.

    - Improve your skills and tooling. (note that this is at the bottom of the list, but to be done as you do the above)

    I'm available if you have questions along the way about product, people, engineering, hiring, sales, or you want to bounce off ideas or have problems. Contact information in my profile.

    From Algeria, with love.

  • by eigenhombre on 10/31/21, 2:22 PM

    > When I was in college I really loved working on the console, I built great apps using the console, and I quite enjoyed what I was doing!

    Having written programs for nearly 40 years, I have found that there is a balance to be found, and continuously re-found, between what you love and what will pay. The happiest and most productive programmers I know don't focus just on what will pay, but also on what keeps them interested. This usually involves compromises.

    Admittedly I live in a very different place than Iraq, but perhaps that just means the details of those compromises will be different for you.

    Also, I think it's a mistake to specialize too early, unless you find something that you really love and can make money with it. Don't be afraid to try things, put them down for awhile, and try them again a few months or years later. Follow your interests for your personal work, try to meet your clients' needs in your paid work, ignore the BS as much as you can, and it can be a satisfying career.

    [edit: fix typo]

  • by newacc9 on 10/31/21, 2:27 PM

    >> making a site responsive really really is something I hate

    You're probably frustrated because you think css or mastery in general should take less time. If a person thinks a journey will take 30 minutes and it takes 30 minutes, their mood is unchanged, but if they think a journey will take 10 minutes and it takes 30 minutes, they are enormously irritated.

  • by throwaw89 on 10/31/21, 2:12 PM

    Have you considered switching to a different path in programming? Improve your skills in a different area, and then find a job in it.

    As for jobs, check out Dot Jobs, it's a popular Telegram channel in Iraq where many companies post their job offers

    https://t.me/dotjobs

    But that isn't enough by itself, you need to get your name known and make connections. There's a hidden group on FB called IQDevs where many employees from the biggest tech companies in Iraq (like Earthlink, Qi, etc) talk, network, and share advice. You'll need to figure out a way to join that, but I'm not sure how since it's hard to get invited there.

    Best of luck.

  • by Alex_Bell on 10/31/21, 4:08 PM

    Dear friend. Perhaps the whole problem is in finding a decent idea for the project. Your own idea, not someone else's. It may be worth studying more about the needs of people in your country. For example, I am 49 years old and 4 years ago I started learning Python without having any knowledge of computer science. Absolutely none! But I have so many ideas that I just wanted to self-study and implement what I have been wanting for so long. I wish for you to find yourself in this world of user needs.
  • by LeoSolaris on 10/31/21, 12:20 PM

    You might want to get into Open Source. You can build your backend programming skill set and your portfolio with meaningful patches to projects that are used by companies around the world.
  • by rmah on 10/31/21, 3:49 PM

    Two things that may seem a bit tangential at first but relate to how you're thinking about your life.

    First, having "nothing to be proud of" is not necessarily a bad thing. Perhaps you simply have high expectations for yourself. This is a good thing. You will always be striving to improve your craft and the things you create.

    Second, not to sound harsh, but the stuff you did as a kid doesn't really matter to prospective employers beyond "he's pretty passionate about programming". In a few years, your college projects won't matter much either. This is just how it is.

    Finally, you're only 25 and 1 year out of university. No one expects that you have accomplished anything! Combine this impression with your past projects to emphasize how you are willing and able to learn the practical aspects of software development on your own. That you are enjoy tackling new problems and exploring the unknown. And finally, that you not only toy around but actually deliver products too!

  • by muzani on 11/1/21, 4:26 AM

    I was in a similar space. Feel free to email me if you'd like to talk more.

    I'd say stick with it, especially when it seems tough. I thought tech was a dead end job. But the less jobs there are, the less people do it. The less people do it, the more valuable the skill set is when the jobs finally happen.

    Tech is inevitable. Spreadsheets replace paper. CRUD replaces spreadsheets. It'll happen, the question is how long it takes. What's happening in SE Asia is a kind of tech "colonialism", where companies try to build local. Iraq has people, it has a market. It has problems that can be solved more efficiently with code, even if it's say, used cars or dating.

    Native mobile is good, but basically, you want to be able to do CRUD. That might mean React Native or Flutter work. The native jobs pay a lot better, because they're usually solving bigger problems at scale.

  • by Zababa on 10/31/21, 3:50 PM

    Just to give you some perspective, I'm 24, have been coding for 6 years, got my first real job recently and I don't have much to show for it except my current job. That's fine by me. If you can already make a living, sometimes the hard part is to sit back and relax, and enjoy life.

    The only thing that I'm really proud of is a small Go application (90 lines of code) that automates some manual work for my mother. Almost anybody could have written it, it's not complex at all. I could have written it when I was 15, and certainly didn't need 5 years (that actually took 8) years of studying for this. But I did write it, and now she spends less time doing tedious manual work. It really makes me proud. Way more than getting a master's degree, way more than getting a job, way more than doing good at my job.

  • by barrenko on 10/31/21, 2:06 PM

    I am 33 with nothing to show for it (yet), keep at it.
  • by kaladin_1 on 10/31/21, 2:37 PM

    Truly, many people feel they're stuck in their career, even those I'd consider successful. Other times they feel great.

    Like many have already said, set specific goals and work at them.

    E.g. * build an app that does what you need. * try a startup that requires minimal investment to setup * start a FOSS application * get a remote job where you can actually do backend work...e.t.c.

    The struggle to achieve your goals will keep your life exciting... Of course, there'd be failures and successes but it's all an adventure at the end of the day.

  • by NumberCruncher on 11/4/21, 5:32 AM

    If I were you I would do what our working student from Iraq did. Enroll in a German university without tuition fee, do some freelance / working student job on the side until you can turn your student VISA into a normal one.
  • by gaws on 11/1/21, 10:54 PM

    > I live in a third world country (Iraq to be specific), the city I live in almost has no software-based startups / companies, also goverment work in IT is very very very difficult to get due to the amount of corruption there is

    Uh... get out. You'll find infinite opportunities elsewhere.

  • by joshdev on 10/31/21, 2:14 PM

    It sounds like you just don’t enjoy frontend work. If you are trying to build a product on your own it’s impossible to avoid, but there are plenty of companies in the EU and US hiring for backend developers. Understanding how both sides get work done is important, but there is nothing wrong with focusing on just one area.
  • by aristofun on 10/31/21, 1:00 PM

    >> really really is something I hate

    With such attitude you either should switch away from dev completely or suck it up and start setting specific goals and learning to enjoy the process.

    One example of a good goal - find a fulltime remote job in a good tech company.

    Another — run away from corrupted country and start a new professional life somewhere else.

  • by MR4D on 10/31/21, 3:32 PM

    There’s so much more than UI: back ends, database, IO layers and so on. You might even look into physical network and telecom. Those still require a lot of configuration and logic, which is essentially what all CS grads have been trained in.
  • by agent3bood on 10/31/21, 6:30 PM

    It is better to work with US/European companies, I have had more success in term of developing my skills and getting real world projects when working with this type of clients, and the pay is better as well.
  • by fencepost on 10/31/21, 2:52 PM

    Front ends also have back ends and not everything has to be developed by a full stack developer. A lot of back end work is going to involve APIs and data management, so consider work in those areas.
  • by giantg2 on 10/31/21, 1:05 PM

    I also struggle with CSS, but I enjoyed Java for Android. I need to learn Kotlin next. I'd say give it a try and see how you like it.
  • by g8oz on 10/31/21, 3:43 PM

    My advice: move to the Gulf if you can. You'll have more opportunities.
  • by moneywoes on 10/31/21, 3:47 PM

    Almost 2 years in as a dev and how do I avoid this?
  • by manx on 10/31/21, 1:43 PM

    For native app development you might want to try Flutter.

    Don't try to build anything to show it off. Work on things that interest you the most and share these instead.

  • by throwaway00837 on 10/31/21, 2:56 PM

    The IT industry is vast, and there are hundreds of different kinds of programming jobs, not to mention other jobs in IT.

    The first thing I'd do if I were you is start mapping out some of what's out there. Start by looking at job boards and look at every single position listed for IT. You may not understand the titles or what is involved. Maybe it doesn't look interesting, or it looks difficult. Just map it all out anyway, and consider how many openings for a given position there are. Then start researching those positions to find out what's involved to get one. Since you're in Iraq, I would focus on positions that can be done remotely. But there may be many positions in your country going unfilled for niche jobs.

    There are other jobs that won't show up on job boards, and you can find out about these the more you learn about the IT world. Network with different IT groups, talk to different folks, learn what's out there that isn't on a job board. Networking is the best way to get hired. You can do this on message boards, mailing lists, Discords, IRC, meet-ups, etc.

    Even though you've spent a lot of time on programming, it's not too late to switch to something else. Maybe you enjoy working with people more than the kind of coding you'd get paid for. Maybe you're interested in systems. Maybe tech in general is just horrible and you would be happier with something with low hours, not a lot of expertise, and a big paycheck. Maybe you just want to freelance but in a different field of programming. There's a lot more options than you might think.

    One way to be exposed to a lot of positions is to get employed by a massive company (remotely, let's say), and slowly work your way into different positions internally. Some don't have much lateral flexibility, but some have tons. This can give you job security while you learn a new skill. You can also learn different human languages, and become valuable by being able to work on projects that span the globe.

    But my main point is this: there is a lot more out there than just making websites or mobile apps. A lot. And you are very young still, with all the time in the world to go a new direction.