Feb. 7th 2018
If you're an engineer, I'm sure at some point in your career you've held a job where taking time off just isn't an option. There are too many projects to complete, and you can't justify a lengthy vacation because it means missing this deadline or that conference. Forget taking time off to start a family or take care of an elder family member, life outside work just doesn't exist.
Luckily, it's not like that at Dow Jones.
Not only does Dow Jones have a Returnship program that gives professionals who have taken an extended break in their career an opportunity for a fresh start, but they offer flexible work with generous time off and parental leave for all. Dow Jones even hired a woman at 9 months pregnant to lead their tech team- talk about agile!
If you're an Engineer who thrives in a fast paced environment and is willing to go the extra mile for a company who is ready to invest in you and your success, keep reading for two opportunities you can't pass up.
For more opportunities with Dow Jones, make sure to follow them on PowerToFly and be the first to hear of any and all new events and job openings!
Software Engineer at Dow Jones
Dow Jones is looking for someone to join their cross-functional agile software team, to design, implement, and maintain their web applications in a highly collaborative environment.
Location: Minneapolis (MN) , New York (NY)
Employment Type: Full Time
- Participation in discussions about technology, design, UX, infrastructure and considering the pros/cons of a technology choice based on business value, scalability, maintainability and project delivery performance
- Support Dow Jones technical cultural values and are capable of driving toward solutions independently, seeking feedback when appropriate
- Maintain and share knowledge in emerging technologies and tools in the industryBeing able to prioritize and manage work, adhering to critical project timelines in a fast-paced environmentShare a passion for design and technology
- BS/MS in Computer Science, Design or equivalent
- 2+ years experience developing web applications
- Proven understanding of Computer Science fundamentals including web development, service-oriented architecture, cloud computing, test driven development and domain driven design
- Working knowledge of web based technologies with a combination of the following: Node.js, React, JSON, NoSQL, SQL
Senior Software Engineer at Dow Jones
Dow Jones is looking for someone to help play a key role in project development, implementation, and deployment on their engineering team.
Location: Minneapolis (MN), Princeton (NJ)
Employment Type: Full Time
- Working within the technology teams to build applications and architectures to support our Editorial, Data Acquisition, Database, and Data Distribution systems.
- Creating application and system architectures, working closely with other technical teams and can effectively communicate these architectures to senior management
- Defining and implementing application architecture models and programming standards with little direction needed.
- Defining and building the application development and maintenance environment (includes component and assembly test environments). This includes the design and implementation of the developers', testing, application monitoring/control, change management and implementation workbenches.
- Designing and implementing the process and repository for cataloguing and managing application code/constructs (software configuration management) and reusable application components.
- Responsibility for adherence to the implementation of software engineering methods/practices.Effectively communicating system enhancement needs and may play lead role in the solutions implementation.
- A minimum 5 years of experience with a Bachelor degree in Computer Science is required.
- Fluid in Information and System Architecture.
- Proficient in architectures (from Website to backend systems) with experience in application performance and API development.
- Understanding of Database technologies including Relational, SQL, and NoSQL.
- Experience designing and creating SQL relational database tables, views, indexes.Hands-on experience writing database SQL code including stored procedures, functions.
- Experience with both Linux and Windows operating systems.
- Experience with architecting systems in a cloud-based computing environment, preferably Amazon AWS with tools such as Cloud Formation, Terraform, Jenkins, Chef, Artifactory.
- Experience in delivering Systems to an enterprise environment that requires standards for error handling, logging, storage, and networking.
- In-depth knowledge of communication protocols and understanding of XML, XHTML, DHTML, DOM, JSON and Web Services.Experience with designing load balanced/high performance (low latency) systems.
- Proven experience in developing with a Software Development Life Cycle, preferably agile.Excellent written and oral Communication Skills.
- Ability to translate business needs into technical requirements including architecture and design specifications.
- Ability to work in cross-functional teams requiring coordination across multiple internal groups.
Katie Dillon has many hobbies. During the pandemic, she picked up candle and jewelry making, opened an Etsy shop, learned new watercolor techniques, and poured hours into maintaining her vegetable garden.
And recently, her interest in the lindy hop community has been resparked. “Swing dancing is something I enjoy doing,” she shares. “I used to travel for dance every other weekend. It was a huge part of my life. And I recently got inspired to get back into it.”
Whether through crafting or dancing, Katie enjoys harnessing her creativity — a skill she also uses for her work as a Software Engineer at SeatGeek. We sat down with Katie to learn how producing effective code involves creativity and design thinking.
Following Her Interest in Design
Katie grew up within a family of software engineers. “My dad is a software engineer and my younger brother has always wanted to be a software engineer,” she shares.
Katie, on the other hand, wanted to carve her own path. “I wanted to do the absolute farthest thing that I could think of from software engineering. There was no way that I was going to code.”
In an effort to find her own voice, she joined a filmmaking program in high school. “It was film, design, and English,” she explains.
After two years in the program, her mind was set on filmmaking and she applied to several university filmmaking programs. Although she was accepted to some reputable schools, she started having second thoughts.
"I thought I didn't know exactly what I wanted to do, so I wanted to go to a school that allowed me the flexibility to change my mind. I ended up applying to some design schools and then going to the University of Michigan," she says.
There, she pursued an art and design major and started on her career journey.
“I [ended up] doing graphic design, UI/UX stuff,” she explains. “I was doing a lot of freelance design work and consulting for small businesses. I was full design and felt pretty good about that for my future.”
Katie had regular clients and a full schedule with her design work, however, she felt inclined to take an intro to coding class to stay current—and keep up with her family’s dinner table conversations about machine learning.
“[I thought to myself], ‘I'd like to understand what this chaos is when my dad talks about it,’” she admits with a smile.
And after that first class, she was hooked.
Merging Creative Design With Coding
“I took one class and I [knew] this was for me,” Katie shares.
“It opened my eyes to the fact that engineering can feel like adult Legos, where it's highly creative, but in a way that also tickles my organization brain,” she explains.
Because of her newfound interest, Katie decided to finish her design degree with a minor in computer science. While working to achieve this, she got a first glimpse at what a career in tech could look like. This glimpse came from an internship for a company she was previously doing design work for. “It was a local company in Ann Arbor. [I told them] I wanted to code and it worked out great,” she shares. She went on to describe the invaluable mentorship and support she received during her transition from design to code. “That internship really helped me envision what it would look like to work as a software engineer,” she adds. “Something I’m still grateful for.”
Because of her design background, Katie was able to draw similarities between designing and coding. From a design perspective, coding is “designing how a system is going to work or designing the flow of information,” she explains.
She has always thought of design as a form of creative problem solving; understanding a problem or a pain point that needs to be solved, ideating different possible solutions, and then realizing those solutions.
Similarly, coding involves designing creative solutions to problems. In both cases, these problems often have many solutions. “With coding, we're not outputting something visual, but designing how information moves through a system,” she explains.
The key is being able to design code that helps reach goals; and design thinking plays a crucial role in that. “There are so many different design choices that make good code.”
Using Creativity to Code at Seatgeek
After her first experience with coding, Katie decided to expand her career and found SeatGeek through a job search. What caught her attention was the staff.
“Something that resonated with me was that there were these people in all different walks of life who, I felt, SeatGeek honored and encouraged to be their whole [selves] both inside and outside of work,” Katie says.
SeatGeek is the live entertainment platform that’s rethinking ticketing by caring more about fans, teams, and venues. With their technological savvy and fan-first attitude, they’re simplifying and modernizing the ticketing industry.
Now as a Software Engineer, Katie uses creativity and design work in her coding process. “I use creativity more when I’m thinking about and planning code,” she adds.
“[On my team] we try to think about these big problems and break down those problems into smaller chunks and that process is so creative to me. We’re figuring out what needs to be solved and then designing some sort of solution.”
Advice on Using Creativity to Power Your Code
Creativity is a beneficial skill — one that Katie uses on a regular basis.
“In my job, I end up wearing many hats and playing designer when writing frontend code,” she explains. “It's always great when I'm able to collaborate with someone and have explicitly asked for design input on bigger projects, but when that's not possible, my design background allows me to still be effective and create user-friendly interfaces through conversations with stakeholders and an iterative design process.”
Katie emphasizes that everyone should identify their own creative processes and harness those when designing and writing code, but she offers this advice for those searching to vary that creative spark:
- When in doubt, draw it out. “This may not work for everyone but it works for me to have a physical pen to paper and be able to draw my ideas,” says Katie. “Whether you’re drawing a diagram or a doodle, it doesn’t have to be perfect. This process can reveal the weak points and help you focus and iterate on your ideas.”
- Be open to collaboration. Having open and casual meetings with other engineers can create the space for innovation. “I think that some of the most effective and groundbreaking meetings don't really have a plan other than ‘let's talk about this big idea and think about it,’” Katie shares. “Talking to other engineers during that unstructured design time is really helpful.”
- Do the big design work first. “Doing enough of the planning and design work ahead of time, I feel, lays the base to be more creative with the small things,” shares Katie. “Once you have the structural pieces in place, you can utilize creativity by getting feedback and bouncing ideas off of other colleagues to fill in the missing components.”
If you’re ready to apply creativity and design to solve big problems, check out the open positions at SeatGeek.
We all have our favorite websites– the ones we frequent, bookmark, and recommend to others. You might even enjoy some website features so much that you’ve found yourself wondering why they aren’t more popular. Or maybe you’ve experienced times where you were frustrated with a website and wished you could add features or even design your own!
If you’ve ever found yourself intrigued at the prospect of designing and developing your own websites, then a career as a web developer might be just for you!
As a web developer you would be responsible for coding, designing, optimizing, and maintaining websites. Today, there are over 1.7 billion websites in the world and, in turn, the demand for web developers is on the rise. In order to figure out what kind of web development work best suits you let’s start with an introduction to the three main roles in web development that you can choose from.
The Three Types of Web Development Jobs
Front-End Web Development: The Creative Side
In addition to programming skills, front-end developers need to be detail oriented, creative, willing to keep up with the latest trends in web development, cyber security conscious, and geared toward user-friendly designs. The median salary for a front-end developer can reach well into the $90,000 to $100,000 range.
Back-End Web Development: The Logical Counterpart
While a house can be beautifully decorated, it’s incomplete without a solid foundation and efficient infrastructure. Similarly, a well-designed website depends on logical and functional code to power the features of that website. Back-end web development is code-heavy and focused on the specifics of how a website works. If you enjoy the analytical challenge of creating the behind-the-scenes code that powers a website, then back-end development is for you.
Full-Stack Web Development: A Little Bit of Everything
A full-stack developer is essentially the Jack (or Jill)-of-all-trades in web development. Full-stack developers need to be knowledgeable about both front-end and back-end roles. This does not necessarily imply that you would need to be an expert in both roles, but you should fully understand the different applications and synergies they each imply. In order to work in this position, you will need to know the programming languages used by front-end and back-end developers. In addition to these languages, full-stack developers also specialize in databases, storage, HTTP, REST, and web architecture.
Full-stack developers are often required to act as liaisons between front-end and back-end developers. Full-stack developers need to be both problem solvers and great communicators. The end goal for a full-stack developer is to ensure that the user’s experience is seamless, both on the front-end and on the back-end. In return, you can expect to earn a median salary of $100,000 – $115,000 a year for this role.
Taking the Next Step
Web development is both in-demand and lucrative! All three roles described above contribute to specific aspects of web development and the scope of each one can be customized to the industries and positions you feel best suit you. Regardless of which role you choose, all of them need a foundation in programming.
To gain the programming skills needed in each role, you can enroll in courses or learn independently. Coding bootcamps are a great way to boost your skillset quickly and efficiently.
Click here for some of our highly rated programming bootcamp options! Make sure to check out the discounts available to PowerToFly members.
Tiffany Witwer from Elastic is a proud mom of three.
“I enjoy being a parent because it teaches me patience and it gives me a different perspective,” she shares. “It allows me to be more present, laugh more, and appreciate the small things.”
In between her duties as a mom, she keeps herself mentally and physically healthy by running, biking, swimming, or doing yoga — all activities that help her start the day with gratitude. "It gives me the right perspective and attitude to go into the day,” she says.
With an overall positive outlook on life, Tiffany brings that same energy to her customers at work as the Head of Customer Service for Elastic.
We sat down with Tiffany, who shared with us her career journey from civil engineering to customer service. Keep reading to learn top tips for creating happy customers.
Starting a Career in Engineering
Tiffany pursued an undergraduate degree in biological engineering.
“I was always really good at math and science, especially chemistry. And I love being outside in nature and learning about it,” she shares.
It was a college professor’s research on stormwater runoff that motivated her to pursue her master's degree in biological and civil engineering. “I liked his energy and attitude toward learning. It was contagious,” she describes.
While working alongside this professor at North Carolina State University, she presented her work at a conference that helped lay the groundwork for her career. “I met a man who liked my presentation," she says, "and was hiring a civil engineer for a consulting company.”
Taking on this new opportunity, she moved to New York City where she discovered her love of being surrounded by diverse people and cultures, in addition to her new job.
“I enjoyed doing the design work and meeting the customers,” she explains. "I was always the one on the proposals, winning the design work, and building relationships with customers.”
While emerging in the complex realm of storm waste engineering, Tiffany saw how the world was progressing and thought that knowing software and technology would be beneficial.
“So I learned to code, networked, and got a job at a business analytics and software company as a pre-sales systems engineer,” Tiffany says.
Pivoting into a Customer Success Role
As she dedicated more time to customers, her interest in working with them soon began to increase. “What I loved most was that I was using my mind to solve problems, but I also got to interface with customers. I got to meet customers and hear what they were doing and hear how we could help them.”
Tiffany spent 10 years in pre-sales engineering and sales. She then took a job in a different company where she helped build out their advisory services business.
It was there that she built a successful team with coworkers who would lead her to her position at Elastic.
Elastic is the leading platform for search-powered solutions. They help enhance customer and employee search experiences, keep mission-critical applications running smoothly, and protect against cyber threats.
As the Head of Customer Service, Tiffany is responsible for making sure customers are getting the most value out of their software. "It's not only about how customers are using the technology," she explains. "It’s, ‘how is a customer's experience with Elastic? Are we meeting their need for technology?’ And, ‘are we meeting their needs from a support and empathy standpoint?’”
In order to meet her customers’ complex needs, she emphasizes how crucial communication is.
The Importance of Communication in Customer Success
Quality communication is a skill that can often be undervalued. “I think people underestimate how much time is needed for clear communication,” she points out. “Just because you put a message out there, it doesn't mean it’s clearly understood. You need to think through how people are going to respond to the information.”
With the complexities of communication, Tiffany relies on setting clear intentions when communicating in meetings. “I always ask at the beginning, ‘what is your goal for this meeting and what does success look like for you?’" she explains.
Communicating clearly what success looks like for both parties allows for a better outcome. “I think for communications, it's making a lot of time and clearly defining what you want to get out of the interaction.”
Advice for Clear Communication with Customers
Tiffany’s career journey has been a mixture of understanding technology and building relationships with people — learning how to explain the technology to customers and problem solve in an empathic way. This has led to overall customer success. To create clear communication, Tiffany offers this advice.
- Be empathetic and listen to your customers: “If you think about it, you've been trained in your technology, you know it inside and out,” she explains. "But when you meet with a customer, the technology may only be a small part of their job.” Taking this perspective can help you to communicate with more empathy. “It's understanding people's vantage point and then using that to communicate to them.”
- Defining success and clearly communicating it: “I'm a strong believer in getting on calls and confirming the goals and what people want to get out of the call," Tiffany shares. "This way, you know, you are aligned on what success is no matter what type of call.”
- Be genuine: “At the end of the day, people will remember how you made them feel," she shares. "I think for me, it's about being a good human and making the world a better place. And if you can do that in your job as well, that's a win-win.”
- Get to know people: “Getting to know people, their perspectives, and growing with them is what has led me to customer success and to where I am in my career,” Tiffany advises.
Josephine Roh loves brunch. Particularly hosting it — and bringing special dishes to life to share with her friends.
The latest recipe she’s mastered is for lemon ricotta pancakes.
Cooking is part art and part science, which might be why the senior technical writer for fintech platform Moov is such a big fan of it.
“I’ve always liked using both sides of my brain,” says Josephine, who studied English literature in college, in line with her right-brain strengths, but also added an economics major to sharpen the analytical left side of her brain. She credits this double-barreled approach with setting her up well for her current career.
“It prepared me to be a holistically well-rounded person when it comes to how I think and work,” she says.
We sat down with Josephine to hear more about how she found her way into a career in technical writing, as well as the tips and tricks she has for people interested in following in her footsteps.
A Career Exploration
Josephine started her tech career in customer success at an edtech startup. “It was great training because at a startup you wear lots of hats,” she recalls, noting experiences in user research and operations. After trying a more quantitative-heavy role that gave her exposure to fintech, she realized she wanted something more creative, with an innovative, distributed company.
That’s how she found Moov.
“I was looking for a place with a remote-first culture, and Moov stood out. Some places were hybrid, or said, ‘Maybe we’ll go back to the office,’ but Moov originated without an office and intended to stay that way,” she says. “But I didn’t want it to just be remote — I also wanted it to be very human.”
To Josephine, that meant a culture of coworkers getting to know each other, respecting each other, and caring about each other — which is how she’s experienced Moov’s culture.
“There’s a lot of mutual understanding,” she says. “Something kind of sweet Moov does is this monthly “unbemoovable” meeting where someone shares their story, with pictures, to the extent that they want to. We’ve heard a lot of nontraditional, exciting stories, including from career switchers, and it lends itself to an angle of diversity and creativity that feels like a very healthy, human-first culture.”
Her first few months on the job were spent learning about the product, coming up the curve on technical writing, and pulling together documentation. After finishing the first set of docs, Josephine decided to start focusing on making Moov’s documentation better.
Her manager saw and appreciated Josephine’s initiative and promoted her to senior technical writer, which made her feel like she had chosen the right environment for her growth.
“Moov has let me run with this, building our docs from the ground up because there wasn’t red tape. There weren’t people standing in my way saying, ‘No, this is not how you do it.’ Me being comfortable with that ambiguity and trusting that people like my manager were supporting me, allowed me to be able to grow in my career to where I am now,” she says.
Technical Writing: An Intro and 5 Tips
Josephine explains what technical writing is by referencing a multi-layered puzzle. “You have to understand a certain level of technical stuff, then be able to build a translation layer and explain it in a way that anyone can understand,” she says.
“It’s about writing guides and documents that help developers implement or integrate with different software. It requires some level of knowledge of how developers think and speak, as well as the tools that they're going to be using to make things happen.” That can take the form of API-heavy reference documents, which are more technical, or more “prose-y guides” that explain more holistically what a feature is and how to use it.
Here’s what Josephine recommends to others interested in the field:
- Make sure you have the right skill set. “Tech writing is good for folks who like writing, and don't mind writing about things that they don't yet understand, who are comfortable with ambiguity or diving into the challenge of learning something new and very specific.” Other key skills, per Josephine: interviewing, talking to people, process management, research, relationship building, editing, writing (duh!), and empathy (to imagine the final product from different audiences’ points of view).
- Brush up on key tools. “I’d recommend that future tech writers learn the suite of tools they’d work with. It’s almost imperative that you would know Markdown, which is kind of like HTML, but it's the language that formats text. It’s what most tech writers type in, basically. It would be good to know how API references are generated, too, and also helpful to know how to work with GitHub.”
- Interview other tech writers! “People are super open to talking about their experiences and because it's different at every company, you may want to get a more holistic perspective and talk to a couple of people. The company really makes or breaks your experience.”
- Practice, practice, practice. “Look at the world of open source. If you want hands-on experience, look for a project with incomplete documentation and ask the owner if you can help with documenting it!”
- Find communities to learn with. Josephine says that the online technical writing community is active and generous. “There are communities for any question you might have about tech writing, as well as free resources. I definitely recommend them.” As far as specific resources and communities go, Josephine personally suggests the following:
- Google’s Technical Writing Courses
- Git and its own reference documents
- The Product is Docs: Writing technical documentation in a product development group, a book by the Splunk Documentation Team
- The Write The Docs Slack community, with job postings, recommendations, and channels for sharing other resources