Profile picture

Side Projects Q&A and Videos

About Side Projects

Confused about choosing tech stack for learning and for my personal project

Systems Engineer at Taro Community profile pic
Systems Engineer at Taro Community

I've been in the IT industry for 3 years, working on various projects. For the past 1.5 years, I've been heavily involved in Python projects, mainly as a back-end developer using Django. My tasks typically revolved around building or updating APIs as per specific requirements.

Most of these projects were already underway when I joined, so I mostly inherited tasks based on existing project needs. As a result, I wasn't part of the initial database design or project structuring.

Now, I'm starting on my personal project using Django. However, I lack experience in structuring and designing a project from scratch, especially in organizing apps and defining models.

I took a look at other frameworks like Spring Boot and noticed they don't offer the same level of "batteries included" features as Django.

I'm currently dealing with two main challenges:

  1. Impact of Learning Django First: I'm concerned that focusing solely on Django might limit my overall understanding of back-end development. Django's comprehensive built-in features might not be present in other frameworks, and that worries me.
  2. Project Design and Structure: I'm puzzled about the best practices for structuring and designing a Django project, especially regarding app organization and model structuring.

I'm seeking advice on overcoming these issues and figuring out how to structure my project effectively. I'm also contemplating whether sticking with Django could potentially narrow my overall grasp of back-end development because of its extensive in-built functionalities.

Also, I applied to some companies and most of them are asking for experience in Java back-end development.

Show more
Posted a year ago
354 Views
2 Comments

What would a roadmap to make a transition from Junior to Mid-level look like?

Associate Member of Technical Staff at Taro Community profile pic
Associate Member of Technical Staff at Taro Community

Hi Taro Community!

I am in a very similar position as mentioned by someone here: and from the responses it is evident that switching teams/companies will be an unavoidable step soon. I am currently at an entry-level position (will be completing 6 months at current company soon) and wish to look for roles at the next level of hierarchy (for instance my current role is equivalent to SDE 1, I wish to look for roles similar to SDE 2 or equivalent next). Few points:

  • I am planning to complete 1 year at my current company, so by the time I switch I shall have ~1 yr of experience as an entry-level software engineer (apart from other experiences as internships/side projects/etc.)
  • Firstly, is it realistic to prepare for mid-level at the current position? Do companies hire entry-level SWE's with at most 1 yr of experience for mid-level?
  • If yes, is it advisable to apply now (or 6 months down the line)? I do not wish to work as an SDE-1 (entry-level) in another company by leaving my current one as it will only lead to further delays in promotions (I believe it takes at least a few months to set a good impression in a new team that you are capable for a promotion)
  • How can I best utilize the next 6 months before I aggressively start applying to companies? I understood the point related to side projects - is it advisable to build side projects in the tech stack my team is using, or should I expand my scope to include new technologies I am interested (but not actively working on right now)?

Any insights/suggestions/interview tips will be really appreciated. I have very less workload right now and really want to make the best use of time to switch further.

Thank you!

Show more
Posted a year ago
328 Views
3 Comments

How to become a top developer in outsourcing company?

Anonymous User at Taro Community profile pic
Anonymous User at Taro Community

Even though starting to work for a big company like Meta, Amazon, Google, etc. I believe is a hard to achieve (I haven't work for) somehow it looks pretty straightforward. Learn for interview, get the job, level up. Yes, I am sure it's hard and not many will do it but still you know what should be done (yes, may don't know how). But let me tell you a different story:

I work in a not that famous country in the EU and non of the top tech companies is there. Actually 90+% of the companies are outsourcing companies. As a SE with 10 years of experience in the outsourcing world I can tell you how it works: you work on a legacy code which is so old and so bad (hundreds of people have tried write code there) you can't see good practice at all, no code reviews (sometimes there is bad it is very rare), no unit tests, performance review is only about client's feedback and so on, you got the point. It's about the money only and nobody cares if you are good or not if the client is happy. In very rare cases I have started something from scratch but all of my colleagues were so bad progmmers like myself that we messed up all. It's a deadlock. After 10 years I realized I am a bad programmer and I've seen so many bad practices that I have no passion to do anything anymore. Now to the questions:

  1. Is it possible to apply best standards in an outsourcing company like those in FAANG and if yes, how?
  2. How can I fill all the gaps I have at the moment? Can I fill all the gaps with side projects only? How can I fill them when nobody will teach me anything new. Nowone will review my code and like @Alex said, they are the main source to learn :) How would I know is the code good or not? Could it be better?

The ultimate goal of my career (and maybe in life) is to fill the gap not only in my skills but to create a company (product based or outsourcing) where everyone who join to have a chance to become a great programmer. But before helping others, I need to help myslelf. This is how I found Taro.

Show more
Posted 2 years ago
318 Views
7 Comments

Help deciding on a "main" programming language to build awesome projects and for my general career (AWS & Terraform is my main work)

Anonymous User at Taro Community profile pic
Anonymous User at Taro Community

Hello, I asked about this before, but itā€™s a bigger dilemma now as Iā€™m actively interviewing and many top roles seek a software engineering background.

Scenario: This past year at an AWS Cloud Consulting Partner, I built cloud and Terraform skills but had little software engineering experience. I dabbled in a few languages but havenā€™t committed to one. I want a versatile, productive, ā€œstartupyā€ language for an ambitious one-man project (possibly a PWA) that fuels learning, supports entrepreneurial goals, and offers a great dev experience.

What I Enjoy: I love game dev with Godot, but GDscript has no job market. So, Iā€™m considering a scalable full-stack CRUD project like a PWA game site (think ) that I can build solo. I want to master one language and framework ā€” no constant framework-hopping like with JavaScript. Here are my main options:

1. Ruby on Rails ā€“ Productive, ā€œbatteries included,ā€ and fun (so I hear). While some call it ā€œdead,ā€ remote roles (like GitLab) still exist. I worry about it being a risky specialization.

2. Blazor + .NET Core ā€“ Full-stack with one language (C#) and ā€œbatteries includedā€ features. Blazor is new, but .NET Core skills stay relevant. I dislike JavaScriptā€™s endless framework churn, so Blazorā€™s stability is appealing.

3. Golang ā€“ I like its ā€œone way to do thingsā€ philosophy, compiled binaries, and cloud reputation. But itā€™s focused on microservices, not full-stack projects. Iā€™m unsure if Iā€™d stay motivated building APIs instead of an end-to-end product. Python feels similar ā€” powerful but maybe not a ā€œdo it allā€ full-stack option.

The Goal: I need speed, productivity, and specialization in a language worth mastering. I want to build a PWA project that teaches me core software skills fast and makes me marketable for software engineering roles.

What would you recommend?

Show more
Posted 2 years ago
280 Views
2 Comments

Should I switch companies if I'm not challenged enough?

Senior Software Engineer at Taro Community profile pic
Senior Software Engineer at Taro Community

I have been at my current organisation for a year and i just received a good performance rating and a raise. I have been doing pretty well overall. However, over the last two months i have felt that this role doesn't fulfill my intellectual needs and I am not challenged enough. I would like to widen the tech stack that I work on and have more flexibility in impacting the product (it's a big tech company and has a lot of hierarchy). To continue to be good at my work, I need to spend a good amount of time (~50% of the time) doing non-challenging/repeated/admin work. I have started taking courses and my attention has derailed from office work quite a bit.

I realise that if i want to get promoted here, I need to continue to do what I did to get the good rating and do it even better perhaps. But at the same time, I yearn to work on a broader tech stack and take on more challenging work which may or may not come my way at my present org. The reasons to not switch would be : it's just been a year here, I have vested RSUs (spread out over 4 years) and a promotion would be good for my career (and good for my self confidence), also the work life balance is decent. But I have the urge to switch my attention to side projects and eventually to a role and company where I'm challenged more and hopefully make a lot more impact (startups).

Do you have any advice for me?

Show more
Posted a year ago
229 Views
2 Comments

Projects vs. Open Source - which is better for my career?

Machine Learning Engineer at Taro Community profile pic
Machine Learning Engineer at Taro Community

TL;DR Contribute to Open Source ML or do side projects for ML. Which do you suggest is the better option?

I just started a new job, but due to circumstances (visa, tough market), I had to take the first job I could take and I ended up in a devops/production support role where I cant really write much code or write any production code (literally dont have access to dev code). I dont plan to stay here long (>6 months).

I read the infamous "" post and wanted to do side projects so that I am not rusty

Context on me: 80% of my background is in Applied ML/Data Science and 20% is software engineering. I am interested in pursuing as an ML Engineer/Data Scientist

Open Source

Pros

  • Tons of open source ML stuff supported by big tech companies
    • Meta has a ton of OS projects
  • Huggingface is open source
    • Lot of companies use ML models from huggingface (for e.g. BERT for NLP). Would contributing to this on huggingface be seen as impressive?
  • Exposure to working on large codebases, good software engineering practice as well

Cons

  • Minimal Impact
  • Hard to showcase my achievements, especially on LinkedIn

Projects

Pros

  • Ability to make and measure impact
  • easy to showcase
  • learn a lot

Cons

  • For ML, projects with impact is hard to do. Most ML applications is based on improving current products using existing data
  • Experience from building ML projects might not translate to what I would do on the job as a lot of it involves working with Engineering around data
  • It takes time and a lot of effort to have a ton of downloads
  • Can end up taking a lot of non-ML work work (web design/frontend) which is not relevant to MLE

Final question: If I were to do open source, what is the best way to showcase on LinkedIn?

  • Do you suggest adding the company you did OS for under the experience section and saying "Open Source Contributor"? My concern with this is that it may sound scammy/shady
Show more
Posted a year ago
185 Views
2 Comments

Discussing Projects in Interviews

Anonymous User at Taro Community profile pic
Anonymous User at Taro Community

Iā€™m a Data Engineer at a slow-moving finance company whoā€™s looking for my next job in Big Tech. I just had a recruiter from Stripe reach out about scheduling an interview, which happened because I had a buddy who works at stripe refer me to the role. The position is for backend engineer.

The recruiter says the call will be 20 minutes and I should come prepared with ā€œthe most technically complex projectā€ Iā€™ve worked on, and talk about my role, duration, number of engineers, and stakeholders.

Iā€™m nervous about this because my current role is something of a hybrid between data engineer and data analyst and I do a fair bit of data-analyst type work. Itā€™s not that I donā€™t have projects I can talk about, itā€™s just that Iā€™m insecure about them and I feel like they are unimpressive to a ā€˜realā€™ software engineer and this becomes apparent under sustained scrutiny. So maybe I can get by the 20 minute intro call, but there will surely be an hour-long session later where they want to go into excruciating detail. I do have some experience with backend as well, but itā€™s already almost 3 years ago now.

My question is this: how can I go about improving my situation? Iā€™m applying for entry-level roles (IC1) and was under the naĆÆve assumption that I just had to get very good at DSA/Leetcode. Obviously, this is not the case.

In order to better handle these project walkthroughs going forward, I see a number of potential approaches, which are not necessarily mutually exclusive:

  1. Get better at discussing projects in my current toolkit. Ditch the imposter syndrome and spend more time thinking about what I already have.
  2. Invest more in my current job to create better projects with ā€˜scopeā€™ that are more impressive in interview rounds. Right now, Iā€™m not very committed to my work and coast, doing whatever is assigned to me but in a minimalist way. My current manager has told me how he wants me to be more active in getting things done and taking on a larger role, but as a Tier-3 company, there is no expectation or requirement for me to do so (i.e. very low chance of me being let go), and furthermore, I tell myself I will be leaving soon, so why take on more responsibility? This might ironically contribute to it being harder for me to move since I donā€™t do the kinds of things that make it easier to interview.
  3. Do side-projects outside of work that I can discuss. But here I run into the issue that Iā€™m not working with anyone (unless itā€™s open source) and this is probably not the best approach unless my side-project is really good with users. Iā€™ve heard Alex and Rahul say this a number of times.

Happy to hear anyoneā€™s thoughts about how I can improve my situation. I probably have the wrong attitude towards my current role, as Iā€™ve been wanting to leave it for over a year. Iā€™ve thought about quitting a lot so I can have more time for interviewing, side-projects, networking, learning, and prep, but everyone says thatā€™s a bad idea (especially in the current climate), so itā€™s easier to just muddle on in my current role.

Thoughts are welcome!

Show more
Posted 2 years ago
182 Views
1 Comment