Developing a software which we have no prior experience?

srdigit16

In the zone
What/How should I tell my employer who asked me to make a kind of app which I have no idea on how such kind of apps were developed?
 
OP
S

srdigit16

In the zone
Just say him, that he is giving out of context projects to you, and should transfer the project.
I am an app developer. I have developed apps involving basic apps involving functionalities like form submit, file upload, payment gateway, push notifications etc, deep linking, dynamic links etc But have no idea to make advanced kind of apps like coloring book, media players, audio/video/image editing, games etc. Is your answer applicable for me?

Sent from my Redmi Note 9 Pro using Tapatalk
 

TheSloth

The Slowest One
I am an app developer. I have developed apps involving basic apps involving functionalities like form submit, file upload, payment gateway, push notifications etc, deep linking, dynamic links etc But have no idea to make advanced kind of apps like coloring book, media players, audio/video/image editing, games etc. Is your answer applicable for me?

Sent from my Redmi Note 9 Pro using Tapatalk
If they are insisting then ask time to analyze the effort for creating such apps and then ask good amount of time to develop which you think should be correct and let them know you can't compromise on timeline. If you are doing this, then say you came up with 10 days of effort, then tell them 15 days at least, since this is unknown territory and you don't really know for sure when you might a big unexpected wall which could be hard to breakthrough. If you have a lead with whom can clear your doubts and issues then 12 days should be good. This suggestion is only from my personal experience.

I would really like hear about this for experienced developers if I am right here or not.
 
OP
S

srdigit16

In the zone
If they are insisting then ask time to analyze the effort for creating such apps and then ask good amount of time to develop which you think should be correct and let them know you can't compromise on timeline. If you are doing this, then say you came up with 10 days of effort, then tell them 15 days at least, since this is unknown territory and you don't really know for sure when you might a big unexpected wall which could be hard to breakthrough. If you have a lead with whom can clear your doubts and issues then 12 days should be good. This suggestion is only from my personal experience.

I would really like hear about this for experienced developers if I am right here or not.
In my company, no senior developers & I don't have contact with senior developers outside also.

Sent from my Redmi Note 9 Pro using Tapatalk
 

TheSloth

The Slowest One
In my company, no senior developers & I don't have contact with senior developers outside also.

Sent from my Redmi Note 9 Pro using Tapatalk
Then take time to analyze the effort in number of hours it might take to complete the development. Or play from safe side. go with what Rumba suggested above.
 

rhitwick

Democracy is a myth
Seems you are lacking skill for same.

There are two ways, either upskill urself and then develop the app or
Hire/transfer this work to someone who has this skill.
 
OP
S

srdigit16

In the zone
Then take time to analyze the effort in number of hours it might take to complete the development. Or play from safe side. go with what Rumba suggested above.
The challenge here is to estimate the time.
When we know the solution even if it takes time we can manage. When there are unknown tasks, we can't guarantee that we can finish within the estimated time & if we are stuck at point it will become a big problem unless we have help

Sent from my Redmi Note 9 Pro using Tapatalk
 

TheSloth

The Slowest One
The challenge here is to estimate the time.
When we know the solution even if it takes time we can manage. When there are unknown tasks, we can't guarantee that we can finish within the estimated time & if we are stuck at point it will become a big problem unless we have help

Sent from my Redmi Note 9 Pro using Tapatalk
Generally, you should have time to analyze the task and only then come up with timeline. It may take 1-2 or may be 3 days to analyze how long it will take to complete the entire task since you do not have any lead developer with you who should guide you technically. But honestly speaking, it seems they are expecting too much from you just because they are paying money. In these kind of situations, without a lead's guidance, avoid the "big problem" and play safe game.
 

Desmond

Destroy Erase Improve
Staff member
Admin
How much experience do you have? Generally for freshers and low experience (less than 3 years) workers the employers don't give very hard projects. But beyond 4 years of experience, you are expected to know or at least have gained enough skill to learn something new on your own. In such a case you must put some effort in learning the fundamentals of whatever you are required to work on.

I have 9 years of experience working IT and I have seen such cases a lot. I myself have had to learn new technologies to meet requirements.

At the same time you must also set the expectations of your superiors. If you blindly say yes to everything they say, they will expect that you will deliver. If you do not know something or you have some knowledge gap, just tell plainly that you do not know and that you will learn before developing your app, so the delivery will be delayed. Also, if you have a more senior developer in your team, take some pointers from them as to what to do.

In either case, there are many technologies and use cases and keeping your skills sharp is your responsibility. Nobody is going to teach you things, especially at work. So, if your company provides training, attend all that are relevant to you.
 
OP
S

srdigit16

In the zone
How much experience do you have? Generally for freshers and low experience (less than 3 years) workers the employers don't give very hard projects. But beyond 4 years of experience, you are expected to know or at least have gained enough skill to learn something new on your own. In such a case you must put some effort in learning the fundamentals of whatever you are required to work on.

I have 9 years of experience working IT and I have seen such cases a lot. I myself have had to learn new technologies to meet requirements.

At the same time you must also set the expectations of your superiors. If you blindly say yes to everything they say, they will expect that you will deliver. If you do not know something or you have some knowledge gap, just tell plainly that you do not know and that you will learn before developing your app, so the delivery will be delayed. Also, if you have a more senior developer in your team, take some pointers from them as to what to do.

In either case, there are many technologies and use cases and keeping your skills sharp is your responsibility. Nobody is going to teach you things, especially at work. So, if your company provides training, attend all that are relevant to you.
I have 3 years of experience. No contact senior developers. No senior developers and training in company.

Sent from my Redmi Note 9 Pro using Tapatalk
 

Desmond

Destroy Erase Improve
Staff member
Admin
No contact senior developers. No senior developers and training in company.
Then it's your responsibility to learn whatever it takes. Even if you had senior developers, in some cases they would be busy with their own work to help. In either case, you can look at this as an opportunity to show some initiative and score some brownie points if you can pull off whatever is required.

If you think it's way above your skill level, then better speak up that it cannot be done. It's best for your superiors to know immediately. And if they ask for the reason, you can say that you have never worked on something like this before. I'd still suggest that you try to do it on your own before giving up.
 

rhitwick

Democracy is a myth
Then it's your responsibility to learn whatever it takes. Even if you had senior developers, in some cases they would be busy with their own work to help. In either case, you can look at this as an opportunity to show some initiative and score some brownie points if you can pull off whatever is required.

If you think it's way above your skill level, then better speak up that it cannot be done. It's best for your superiors to know immediately. And if they ask for the reason, you can say that you have never worked on something like this before. I'd still suggest that you try to do it on your own before giving up.
If he does not have skill and lacks knowledge on how to approach, would be wasting valuable time of his company.
Its best to analyze the requirements, find skill gap etc and provide open ended solution to mgmt.

Its not expected that a guy would know everything (if that is the case in ur case then you are kind of stuck but still try to put some logic and negotiate on this).

Do effort estimation with skill upgrade and without skill upgrade.
Would give them better outlook to take a call.
 

Desmond

Destroy Erase Improve
Staff member
Admin
I meant that he should acquire the knowledge needed and then try to develop the application using that knowledge. Normally, I'd look up what the standard practice is in the industry and try to develop the app that way. But yeah, it depends on how exotic the requirements are. If it's something really exotic then it's best to tell the management straight up that it's not possible to do without considerable knowledge.

Still I find it hard to believe that OPs company does not have a single senior developer, there is almost always at least a team lead in a team who has around 6+ years of experience and who is expected to have the acumen to solve new problems or have enough experience in the industry to identify design patterns related to the problems and implement them accordingly.
 

thetechfreak

Legend Never Ends
^^ Might be a newer/smaller company who knows. But very strange indeed.

Sent from my vivo 1807 using Tapatalk
 

Desmond

Destroy Erase Improve
Staff member
Admin
Still, if you are a new company, you'd want to hire experienced developers almost exclusively in the initial stages of product development. Once these developers set the foundation of the product, then junior developers can be hired to work on maintaining or enhancing the product. They will gain experience while doing so.

It's just not logical to give a completely new project to a junior developer to implement, it's just too risky from a business point of view.

How upper management thinks is that whatever resources they allocate (time, money, etc) they want to see a return on their investment. So, if they allocate 10 days to develop an application, they want to see the application developed at least to a usable degree at the end of that time. So asking a junior developer to develop the application could result in cost (time or money, sometimes time is money) overruns. That is why generally such tasks are given to a senior developer or even better a team lead who will have an idea of what needs to be done. The team lead will then break down the development effort into smaller tasks and assign it to team members, usually appropriate to their skill level.
 
Last edited:
Top Bottom