Senior Software Engineer ( Fullstack / Java )

T Rowe Price Group, Inc   •  

Owings Mills, MD

Industry: Finance & Insurance

  •  

Less than 5 years

Posted 37 days ago

The Distribution and Marketing Services team at T. Rowe Price is playing a key role in helping build the future of financial services, working hand-in-hand with business partners to create client experiences that change the way people invest. As a result, we are expanding our technology teams to bring on smart, talented people to help us grow to meet the needs of our business and to continually modernize our platforms.

We are looking for a talented Full Stack Software Engineer to join our team in building a suite of next-generation n-tier, native cloud enabled applications. In this role, you will help engineer and develop new capabilities using modern web/cloud technologies used by our Portfolio Managers and Marketing Specialists, resulting in best-in-class digital experiences for our global customers. You will work within our fast-paced, digital team delivering cutting-edge solutions across our digital properties, applications, and underlying technology stacks. You will be experienced in full-stack digital development, related tool-sets and architectures, and uses technical expertise and advanced business skills to take a significant, and often leading, role in design, develop and implementation of digital solutions for difficult business problems

Designs, develops, modifies, adapts and implements solutions for enterprise data services. Reviews and interprets system requirements and business processes. Solutions, codes, tests, debugs and implements software solutions.

  • Requires in-depth knowledge and expertise in their own job discipline and working knowledge of related disciplines
  • Provides innovative thinking to develop scalable and efficient solutions.
  • Develops Proof of Concepts to explore solution alternatives.
  • Leads projects or work streams within broader projects
  • Accountable for work of self and sometimes others, provides process and standards advice in area of specialty
  • Works independently, receives minimal guidance
  • Acts as a resource for colleagues with less experience

ROLE SUMMARY AND JOB RESPONSIBILITIES

  • Accountable for all parts of the software development lifecycle for their projects
  • Contributes to the development of best practices within their group
  • Leads code reviews and actively participates in providing feedback on others' designs/code
  • Accountable for technical debt in their own software
  • Capable of leading a small team of developers for a specific project
  • Takes control of complex or vague problems and steps through them in a rational way
  • Makes tactical vs. strategic tradeoffs
  • Flexible in his or her thinking; able to evolve a solution when additional information or ideas are presented
  • Mentors junior members of the team
  • Identifies when junior engineers need help and provides it in a positive way that promotes confidence.
  • Proactively helps team members/make suggestions to improve practices.
  • Capable of leading a small team on for specific project(s) or task(s)

BUSINESS KNOWLEDGE

  • Able to work directly with business stakeholders
  • Decisions show a focus on current and future business priorities, together with fiscal responsibility
  • Can articulate business needs and translate them into technology solutions

REQUIREMENTS

  • BS/MS in a technical discipline such as Computer Science, Math or Physics and 3+ years of progressive Software Engineering experience.
  • Strong Experience with programming in Java, Spring Frameworks/Spring Boot, and SQL
  • Stays current with many best-of-breed technologies
  • Programs proficiently in several languages and is comfortable switching between them
  • Shows a commitment to quality by implementing suitable software using unit/integration and acceptance testing at the time of feature development
  • Develops data models or schemas from scratch and knows of key concepts such as ACID, Normalization, and Transactions
  • Debugs large components with limited assistance and assists other engineers with debugging
  • Leads code reviews and actively participates in providing feedback on others' designs/code
  • Performs as an expert in one or more parts of the software lifecycle (e.g., coding, testing, deployment). Oversees significant pieces of development within the development lifecycle
  • Designs and develops practical APIs and abstractions.
  • Owns technical debt in their own software
  • Strong technical skills with Java programming language, log4j, Spring framework (Spring JDBC, transaction, MVC, Spring Boot), XML, JSON, Junit, SQL, Unix/Linux
  • Extensive hands-on experience with Java middle-tier, backend application and restful web service design and development as well as front-end technologies and platforms, such as JavaScript, HTML5, and CSS3
  • Understanding of OWASP top 10 security vulnerabilities and best security practices
  • Experience with databases such as Oracle, Aurora or DynamoDB and data persistence frameworks such as Hibernate, Spring Data JPA, and MyBatis.
  • Unit, functional, integration testing and test automation skills, including experience using test tools such as Selenium, SoapUI, Junit, Cactus, Mockito/Easy Mock etc.

PREFERRED SKILLS

  • Experience with a cloud services platform (AWS, Azure, Google)
  • Experience using Angular version 2+, TypeScript
  • Experience with NodeJS