1

I have 5years of experience with programming desktop applications with C# and WPF. Recently I self-learned React.js(no prior JS experience) + Redux in a month for a company project which has just started now. My task is to design and code the frontend. With having just a month of experience in React and the project having a huge codebase, I can clearly feel that I am not the right fit for the project and very worried about not being able to deliver tasks.

A little background about the project: I voluntarily agreed to be a part of the project in the initial phases. Since I have been performing decently in other projects, the manager decided to take me into the project, also giving me a month time to train with react. I wasn't expecting the project to be THIS big else I would have never volunteered for it

The company that handed over the project to us didn't give any code overview, just gave the documentation with high-level details.

The project development hasn't yet started, though I have been trying to get my head over the code(even in most of my off-hours)... but it is proving to be difficult to understand the ways how react and javascript work.

I need a piece of sincere advice on how to proceed with the project. I don't want to mess up the project and the company's reputation. Is it okay to tell the manager this early that I just can't handle it even though the delivery deadlines are quite strict? I don't want to be that giving up early person. I have also been thinking to ask the manager to put an experienced engineer who can provide some consultancy / advise in case of any issues I face.

Thank you for reading.

I already posted this question on StackOverflow but I believe this is the right place to ask

  • 3
    Not trying is certain failure. Why not inform your manager, and say you'll give it your best despite feeling overwhelmed? – Juha Untinen Aug 17 at 8:52
  • Not trying indeed is a failure, this is exactly why I am trying my best to understand the code, searching on google for any line of code I don't understand. Not getting a code overview by the previous company's developer has been the issue. I have also been thinking to ask the manager to put an experienced engineer who can provide some consultancy / advise in case of any issues – f.alvi Aug 17 at 9:07
  • You should tell you manager that learning the new software is something you should do on company time and they should consider courses for you. Doing this at home in "extra" hours takes you away from family time... – Solar Mike Aug 17 at 9:20
9

If the project is infeasible as it stands, it's your job to make your manager aware of that fact, and his to work out what to do:

  • descope the project
  • extend the deadline
  • get additional people on the team
  • replace you
  • abort the project

By quitting you're forcing him away from some perfectly reasonable options, as well as denying yourself a decent learning opportunity. You probably don't have all the information you need to make a good decision. Sit down, talk through your concerns with him. And remember, projects rarely fail because of a single person, and companies' reputations rarely depend on a single project failing - particularly not ones involving codebases brought in from outside.

  • While I think it's highly unlikely that the manager will actually have most (or any, in some cases) of these options, being up front about this with them so they can make an informed decision -- or at least pass the bad news up the chain of command -- as soon as possible is almost certainly the best move here. – kungphu Aug 18 at 11:08
-1

Please don't leave the project!

Yes, learning a new language and a new framework is challenging and can be overwhelming. But you'll probably go through that ten times in your career. It's a thing, this learning, in the careers of software developers (and all kinds of engineers).

And, some projects are vague about everything except the deadline. This also is a thing in the careers of developers.

Your manager knows all that. And he still assigned this project to you. Please, allow his confidence in you to reinforce your self-confidence. You have this assignment because you're the best person for the job. Really.

It sounds like the project is large and ill-defined. That's a tough position when you're just starting out with a new framework. You have to plan it out and firm up some details. Your first plan will need a lot of work, but that's OK. Ask your manager for direct contact with the customer / potential end users and run your plan by them.

Then do some of it, and run it by the users. What you do first depends on the nature of the project. If it requires multiple screens (each for a different purpose) you could put together some dummy screens and a user interface to navigate between them. Then show your manager and your customers. They'll probably say "nice, but don't forget the screen for the potrzebie framister."

Then prioritize the screens and work on them one by one. If the deadline looks like it's at risk, your manager can get you help.

Another thing: maybe you can find somebody with experience to review your first few iterations of code, and help you stay out of pitfalls. If your company doesn't have anybody who can spare a few hours for that, maybe your manager can find a contractor just for the code review.

Last: use the best possible tools. Jetbrains Webstorm is really good. So is Visual Studio (and VS code). They'll help you spend your time building stuff rather than chasing language subtleties.

(Jetbrains has a big! discount for individuals who buy their tools for their own use. So if your company won't pay for it, you can lay down US$60 and buy it yourself.

Having a track record in React / JS as well as WPF is a good meal ticket these days.

Go for it!

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.