[JAVA] It's been a year since I became a working Android engineer, and it's almost two years.

This article is the 4th day article of nana music Advent Calendar 2018.

I joined the current company as an Android engineer and became a member of society. In my first year as a member of society, there were many things I didn't understand, and there were countless jobs that I thought I could do properly. I also shared the knowledge and experience I gained during my one year through in-house study.

It's been a year since I joined the company, so I looked back / Speakerdeck

This time, I would like to tell you about the first year and how the skills and knowledge required as an Android engineer changed in the second year.

1st year of working life: Breaking away from the hobby engineer who was doing whatever he wanted

Until I became a working engineer, I had only developed it by myself, and at that time I could choose and use the third party library as much as I wanted, and write as much as I wanted with my favorite (appropriate) design. I felt like I could skip as much as I wanted, and I was free to do it, good or bad. When you join the company, such an environment changes completely.

――I could make what I wanted to make without a deadline ... -** Scrum development ** is adopted --Each task is an issue and managed by ** Kanban ** --Let's end this issue with ** 1 Sprint **

--When I was done, I pushed it to master, and the branch was cut only occasionally ... -** Let's branch work according to Git-flow ** --Please put out ** pull request ** for review ――Please pull out the difference as little as possible.

――I was working alone, but ... ――Let's do ** KPT ** for each sprint ――If you have any problems, let's talk 1on1 -** Let's meet with bugs while eating sweets ** ――Let's do Ho-Ren-Sou diligently and share information --The morning assembly is held every day --Let's do ** radio exercises ** after the morning assembly

With that feeling, it took me some time to get used to development as a business. Above all, I feel that mutual review of Pururiku, which I could not do individually, is difficult but very meaningful. The environment of reviewing other people's code without confidence in coding has always been tense, and I have more time to read than to write, so I can touch more code. I am.

In my first year, I managed to get used to working as a member of society, understand existing app code, and catch up on Android technology trends, and managed to get the job done. In the second year, my horizons have expanded a little and I have more time to spare.

Techniques learned in the first year, etc.

MVP/Retrofit/OkHttp/RxJava/RxAndroid/MediaSession/ExoPlayer/ MaterialDesign/Glide/IAB3/MPAndroidChart

Second year of working people: Challenge to development that is conscious of easy-to-maintain code and highly maintainable code

When I'm doing my daily work, I feel more comfortable, so I try to easily incorporate the knowledge and new technologies I gained at the study session, and try out technologies that I can't use at work on holidays. I feel that there are more opportunities to try it. As a result, the time spent programming is significantly higher than in the first year.

From this trend, the team has frequently discussed and thought about how to improve the existing code and how to make the users use it without stress. It seems that it can be roughly divided into the following two.

--The appearance and movement of the app are subtle (** parts that affect the user ) ――We will improve by involving the design team and PO ――Aware of design proposals involving Material Design and Material Theming --Although it works, the writing style is subtle or old ( part that does not affect the user **) --Propose and solve improvement plans within the team --Ask the QA team to confirm the corrections that have a wide range of influence ――Aware of testable implementation and implementation that reduces the number of problems that occur in QA

It wasn't possible in the first year that the number of people who took the initiative in solving these problems and attended MTG for solving them increased. I feel that it is a good study to be able to participate in the place for organizing requirements and formulating specifications that should be decided before writing code.

By the way, what should I study when I enter the third year?

Techniques learned in the second year, etc.

Kotlin/MVVM/Dagger2/Jetpack/AAC/ConstraintLayout/ DataBinding/AdTech/Hyperion/Firebase

Third year of working life: Challenge to areas that you are not good at

It's abstract, but I think I'll study things that have high learning costs, things that are seemingly modest (cool if possible), and things that don't produce immediate results. For example

--Test --Thread processing --Hard functions such as camera and video

Or something like that!

Summary

This time, I haven't posted an article on Qiita, so I'm sorry to say that I posted it on a theme that is easy to write.

In the future, I hope to take this opportunity to post technical posts as well!

Our nana music advent calendar is still going on. I wonder if I'll post a technical article somewhere for the second time: eyes: Tomorrow, @yamanemur will deliver it brilliantly!

Recommended Posts

It's been a year since I became a working Android engineer, and it's almost two years.
It's been a year since I became an engineer from 28 years old
It's been a month since I became an engineer from inexperienced ...
2018. It's been two years since I became an SE, so I'll expose the book I read.
It's been a year since I became an engineer from 28 years old
It's been a year since I became a working Android engineer, and it's almost two years.
It's been a month since I became an engineer from inexperienced ...
It's been half a year since I started using [Ubuntu18.04], so I'll introduce the settings !!
2018. It's been two years since I became an SE, so I'll expose the book I read.
It's been a month since I started programming seriously @ Tech Camp
I am studying to change jobs from inexperienced to a web engineer.
It's been half a year since I started using [Ubuntu18.04], so I'll introduce the settings !!
It's been a month since I became an engineer from inexperienced ...
It's been half a year since I started using [Ubuntu18.04], so I'll introduce the settings !!
It's been a year since I became an engineer from 28 years old
I started programming diary
It's been a year since I became a working Android engineer, and it's almost two years.
[Impression] Take a Tech Camp
It's been a year since I became an engineer from 28 years old
It's been a year since I became a working Android engineer, and it's almost two years.
It's been a month since I became an engineer from inexperienced ...
It's been half a year since I started using [Ubuntu18.04], so I'll introduce the settings !!
2018. It's been two years since I became an SE, so I'll expose the book I read.
It's been a month since I started programming seriously @ Tech Camp
I am studying to change jobs from inexperienced to a web engineer.
Since I became an IT student about two years ago, I have been scrutinizing the system creation so far.