Hey all,

I am a software developer at a small company where I’m one of two developers. The other dev is primarily back-end and has been working off some basic cloud infra set up by an external company before I joined, so I’m essentially running solo on the frontend, some of the backend, cloud architecture, project management, etc. (really, everything except database management some of the existing api endpoints).

So, what are the best ways to improve in this scenario? How do you prevent a limited learning environment from limiting your growth? Has anyone been in a similar situation and learned some tips for making the best of it? Any ideas?

(Also, I know it’s frequent advice to just say “move companies” but this job is a really unique opportunity, and I absolutely love the company, so I am not interested in doing that.)

Thanks :)

  • mycoffeeisready@feddit.nl
    link
    fedilink
    arrow-up
    1
    ·
    1 year ago

    Have you considered pairing up and doing end-to-end feature development together? That way you can learn from each other.

  • Zapp@beehaw.org
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    With only 2 developers, CI/CD can be your best friend. Automate the daylights out of testing your code.

    Remember to tag your regression tests in some way - any test that is preventing a production bug that actually happened needs to be marked as a ‘regression’ and treated as high priority to keep passing.

    Treat all others tests as more art than science. Keep the reliable ones, toss out the brittle ones.

    Look for a network traffic recording/replay library for your toolchain. Reusing integration tests as unit tests is a huge time savings.

    If you have live data access, build yourself a few charts that represent a typical day. Knowing what “normal” looks like in your database can be priceless on a weird day.

  • vinniep@beehaw.org
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    Being in a small company is different, but not worse (or better). With the roles you have on your plate already, you have a sprawling blank canvas to work from, and in a small company environment, you tend to have a significant amount of flexibility so long as you don’t take your eye off of the main company objectives (vs a large company where “that’s not your department” situations can squash many learning opportunities).

    First, figure out what areas you want to focus on. This doesn’t need to be forever, but you are going to need some degree of focus or you’ll risk doing a hundred things poorly and not really learning much.

    Once you’ve figured out what you want to focus on first and have done some basic research/discovery, seek a mentor. This is one place where small companies make things harder, as you almost always need to look outside to find mentoring.

    With the Project Management and Cloud Architecture bits of your role, you can look at Financial Operations. Just make sure you take a high level look first to see if there’s sense in that (make sure the ROI on you and your co-workers time plus any new services/providers needed makes sense for what you can potentially save - you want to be able to show that your time was well spent with any self-initiated project or you risk someone deciding that you need to be more closely monitored in the future).