Senior Software Engineer - Java
myworkdayjobs
Job Description
-
Deliver efficient, maintainable, robust Java or Golang based code
-
Produce designs and rough estimates, and implement features based on product requirements.
-
Collaborate with peers on designs, code reviews, and testing.
-
Produce unit and end-to-end tests to improve code quality and maximize code coverage for new and existing features.
Requirements
-
5+ years of professional software development experience
-
Strong Java experience
-
Great communication skills
-
BS in Computer Science, or a related field
-
Proficient experience with object-oriented analysis and design skills
-
Proficient experience with an object-oriented programming language and techniques
-
Proficient understanding of Java Frameworks like Spring Boot
Preferred
-
Experience with AWS
-
Experience with Continuous Delivery
-
Experience instrumenting code for gathering production performance metrics
What success looks like in the role
Within the first 30 days you will:
-
Onboard into your new role, get familiar with our product offering and technology, proactively meet peers and stakeholders, set up your development environment.
-
Seek to deeply understand the technology or common engineering challenges
-
Take on and deliver your first work tasks.
By 90 days:
-
Proactively implement different enhancements, defect fixes by interacting independently with different (sometimes many) stakeholders, architects and members of your team.
-
Take a committed approach to contributing to different projects development alongside less experienced engineers on your team—there’s no room for ivory towers here.
By 6 months:
-
Collaborates with Product Management and Engineering Manager to estimate and develop small to medium complexity features more independently.
-
Lead projects with small group of 3-4 members. Participate in resource planning, backlog refinement activity.
-
Occasionally serve as an analysis expert during escalations of systems issues that have evaded the ability of less experienced engineers to solve in a timely manner.
-
Share support of critical team systems by participating in calls with customers, learning the characteristics of currently running systems, and participating in improvements.