1

I am an apprentice at a large-ish company (500-600 employees). It is an engineering firm. I have written a web app which was not requested by anyone to start with but when I demonstrated the potential it was then requested by management (this is great.).

The department I work in a software department but not web-apps, so not HTML, Javascript and so on. It is a software department for the product we manufacture. In my department is another apprentice and 2 contractors. The 2 contractors act as my "mentor" but this has to be used loosely for other reasons. They are not my manager. My actual manager basically works in a different department and has absolutely 0 time for me and the other apprentice. (This isn't my issue).

My issue that when I write code, specifically my web app I don't have anyone who can review or go through it. I know more about javascript and HTML than the other 2 contractors in the department. I will ask the other apprentice to go through it, I thought they know as well as I do, they are no expert. They will pick up some faults which is great but they can't give me advice on the structure.

I want to be able to go through my code with someone else so that I am able to improve but I don't have anyone to do this with. Currently, my actual manager wouldn't be interested and his manager doesn't care about the code only the end product, so if the web-app works then he would be happy. But I want to be able to improve.

Also, everything I have learnt about coding has been self-taught. No has really aided me in my learning towards this so I can't go back to anyone that helped me learn because there is no one.

Have anyone had anything like this before where they have no one to review code? What can I do about this because I want to improve but I feel like I am struggling because I have no one to go through it all with me?

  • Where in the world are you? I'm asking because there would be a very specific answer for Germany. – nvoigt Jun 6 at 16:38
  • @nvoigt I am in the UK. – Dritz Jun 6 at 17:23
  • 3
    Something to think about: while it is noble to want to improve your skills and find mistakes in your code, if you're developing as an employee of a company and the people responsible for leading you are happy with the thing you're producing, you may want to make sure you're not pressing too hard or focusing too much time/effort on trying to make code reviews happen, since it's apparently superfluous to your actual job duties. – dwizum Jun 6 at 19:01
  • @nvoigt what would be the specific answer for Germany? Asking out of curiosity as it sounds like it might be interesting. – MattR Jun 7 at 7:06
  • 1
    @MattR we have a very formal apprenticeship system in Germany, so it would be clear who to go to and who to complain to if that person is too busy to actually mentor. Obviously that’s not useful for people not in that formal system because those job titles and institutions do not exist there. – nvoigt Jun 7 at 9:06
3

If there is no one in your department, you can check for other departments inside your organization, who has similar experience and are willing to help you out. You can reach out to your manager and ask around for anyone willing to contribute to the development process.

However, unless there are other departments dealing with software development related to web apps, you are really out of chances here.

Maybe next time you get a meeting scheduled with your manager (or manager's manager - whoever has shown interest in your project), ask them for a formal training / bootcamp session to help you learn better. You should also mention that you managed to get the app up and running, however, to keep improving it, you need

  • Further training
  • Expert guidance and reviews

Also, to mention, not the entire app, but bits and pieces and mock-ups can be posted over Code Review Stack Exchange for expert opinion, too.

  • 1
    Just a note to be careful what you post to Code Review Stack Exchange. That is a public site and you will be posting code which is property of your employer. You should get approval before posting even subsections of your code. – cdkMoose Jun 6 at 16:07
  • 1
    I would possibly be able to post some snippets to Code Review, obviously generalizing some of the things within snippets. – Dritz Jun 6 at 17:24
1

How proprietary your application?

There are developer communities that do code / structure reviews member to member.

Could that be helpful for you?

https://www.quora.com/Would-you-participate-in-a-code-review-community

  • 2
    This is probably great for open source projects but sharing code that you create at work time is in most cases simply illegal (violation of your contract) since you're sharing a property of the company. – Jonast92 Jun 6 at 16:02
  • @Jonast92 You are correct, this is why that was my first question. Although, in some cases OP can receive a permission for a outside code review – Strader Jun 6 at 16:06
0

Assuming you need to keep everything inside your company, there are two approaches you can take, in tandem.

Firstly, start writing tests for your app as it stands (if it's a large app, you can break down the tests into areas). Before you deploy, you'll run all your regression tests to ensure that nothing has broken.

Secondly, do code reviews with the other apprentice, but do them as walk-throughs. Don't just give them a block of code and expect them to understand it immediately; talk them through the issue you're trying to fix/enhance, and then step through each line of code with them. They may not notice any issues, but YOU will when you're explaining it.

0

I would quite frankly challenge your question.

Without knowing details, this doesn't sounds like a start of a real project:

...was not requested by anyone to start with but when I demonstrated the potential it was then requested by management

I have been on the receiving end there, when bosses say something like "yeah, that's a great idea, would be nice to have". And then I would rush to implement something, being happy that my brilliance and wit have been finally noticed by the higher-ups

But that is not how projects are done.

What you are asking is: how do I implement step 100 in a project design, when steps 1-99 are missing.

What is missing (as far as your question reads):

  1. Business case (how does X relate to business needs)
  2. Specification (what X will actually do)
  3. Timeline (when do we need X)
  4. Budget (how much we are willing to spend on X)
  5. Staff (who will do X and how they organized, including your role)
  6. Oversight (who in higher-ups are responsible)
  7. [skipped another 80 items]
  8. Testing, code review and general QA

What I am worried about is that: you will start doing something, without business need, without specs, without much supervision. This might end up being waste of your time, and at worst waste of company's resources.

You need to talk to your management asking about all those items on the list. This shows that you are a responsible professional developer, who recognizes how project management is properly done in order to stay focused, and make company some money.

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.