1

I work in a startup where I am the lone developer (there is one more person who is completely into different domain).

So it's my boss who gives me tasks consulting a mentor who she knows.

The problem here is I get tasks, which are often quite complex in nature. I conveyed the same to the boss, but she says I am not putting enough effort and the task is not that tough. As boss is from non technical background she is not aware of difficulty.

I have 2 years of experience in my field which is machine learning. To some extent what the boss is true, the task requires understanding the code written by someone else and it only involves python which I am fairly familiar with.

But the difficulty here lies with the fact that code, though written in python, seems to have complex logic and it contains many lines of code and connects to different set of files. Many questions arise when I view the code and understand it and there is nobody to ask. But boss says you can take your own time to understand.

But I feel time is not the problem, but the difficulty of code. So am I not putting enough effort from my part as she says or is that I am getting a difficult one without anyone helping it?

  • 1
    How do you eat an elephant? One bite at a time. It can seem overwhelming when you're given a lot of code and have nobody to answer your questions about it. The fact that you're not on a strict deadline is good. You should just go at it a piece at a time. – Dom Aug 27 at 12:27
  • 1
    Does this answer your question? What to do when a project is outside of my capabilities? – gnat Aug 27 at 12:31
  • "or is that I am getting a difficult one without anyoone helping it?" Probably this, startups are notorious for unreasonable demands and expectations. – sf02 Aug 27 at 13:23
  • 1
    Let me guess - you are also not a senrior developer with architecture experience and like 20 years because THEN you would demand a proper market rate wage. That puts you between a rock and a hard place. NOrmally there should be a qualified CTO in place - a startup doing technical work WITHOUT TECHNICAL STAFF is a hollow box - get out while you can. 2 years put you solidly (if commercial) somewhere in the middle of junior developer level. As lone developer of a startup this is a comically epic failure -you should NOT be alone in this. – TomTom Aug 27 at 15:53
  • How did you study machine learning? In the old days you needed quite deep understanding of math and computer science before even touching machine learning, and a program that "contains many lines of code and connects to different set of files" should be easy to understand. Perhaps your boss just has expectations based on what the field was in the past. – ojs Aug 27 at 18:46
4

You might want to ask on a different SE dedicated to helping understand the code, but I'll offer some general work-related advice here.

When something new like this is presented it often seems very difficult. You don't know where to start, there is a mountain of code to go through and it's poorly documented. That feeling is normal but also misleading.

You CAN understand it. Start small and work your way through, adding comments and maybe writing some code to test the behaviour of things you are not sure about. Sometimes observing how something works can really help.

Take your time, as your boss suggested. Don't expect it to come quickly or all at once, just be patient and if something doesn't make any sense at all move on and look at something else.

| improve this answer | |
2

but she says I am not putting enough effort

I think the first thing to do, as with many of these social interactions, is reflect on your personal trust and comradery with the person you are trying to reach. This is likely the first step to being able to properly communicate whatever you decide in an effective fashion and just as importantly consider how honest this feedback is.

As boss is from non technical background she is not aware of difficulty.

Managers often have unrealistic expectations, but after two years of experience you should by now be able to discern that. However its also just as important to consider that should your manager have been involved with many projects she may have gained insight into what is feasible.

But the difficulty here lies with the fact that code though written in Python seems to have complex logic and it contains many lines of code and connects to different set of files.

It is possible your boss has too high expectations of you, but you must realize how big some projects that exist out there really are. This feeling of being overwhelmed by the scope of an existing project often happens the first few times you encounter one, and that is completely normal. I believe this is already mitigated by the following sentence.

But boss says you can take your own time to understand.

If your boss is acting in good faith, and not pressuring you to deliver, just take your own time to really dig into the code. Legacy left by other developers can sometimes be hard to work on. Even if there is no documentation, as you indicated you have time both to understand the code and come up with a general documentation and understanding of your own. In my experience this is best achieved by taking concrete steps, such as identifying and defining the "parts" and sketching them out in diagrams.

So am I not putting enough effort from my part as she says or is that I am getting a difficult one without anyone helping it?

You don't speak of this in your entire post, but what is the actual workload and expectations to come after this initial research phase? You may take the time to understand the code, as you appear to not be heavily pressured, but that is irrelevant if the expected workload is unrealistic afterwards. Should that be true, then there is a very concrete reason for you to escalate and ask for help, without it having anything to do with yourself.

This is my personal opinion, if you're not being pressured, you may take longer but you will likely grasp it eventually, don't despair. Even if you don't, the meticulous documentation you created along the way will more than display to your superior the need for more experienced individuals in the project and the actual effort you put in understanding it.

| improve this answer | |
0

I've always been guided by the so-called "fifteen-minute rule."

Which says: "if you find yourself 'stumped' by something, for more than fifteen minutes, ask for help."

Of course the rule is aimed at "co-workers," but exactly the same logic applies to your boss, who is the individual that's responsible to the company for your entire team.

(Full disclosure: "now speaking as a 'boss!'") "Please don't(!!) let 'your boss' be the last one to know!" 😱

("So, you got problems? Cool." If your co-workers can't help you, I undoubtedly can. "Authority has its privileges." Just, whatever you do, don't "sit on it." Far better for you to come right out and say, "there might be a fire," than for you to "sit on it" like a [in-]famous milkmaid in Chicago.)

There is absolutely no shame(!) in asking. "Please(!) do!"

| improve this answer | |
  • As important as communication is, in SE and especially machine learning, fifteen minutes is nothing... plus in this case, it sounds like there isn't anyone that can help. That's what happens when you're working somewhere small or on the cutting edge. – Mars Aug 28 at 4:33

Not the answer you're looking for? Browse other questions tagged .