Monday, March 16, 2015

One month as a 'professional' engineer...

So yes, I've been an engineer for a month now. I'm one month into my contract. Over the past 4 weeks, I've been growing in confidence and ability. I'm no longer terrified of dictionaries. I'm using them everywhere now. I'm also using tuples and regex. Who would have thought that one month as an engineer in working environment that I would be happy with dictionaries and actually... dare I say it, love them?

At any rate, I have to hand it to my lead engineer. He's been giving me assignments that build up on each other. My first script was difficult (bash scripting is hard!). The second script was a bit easier, but I had to learn how to make my script read XML and edit it. The third set of scripts had to do more with parsing XML in Python and extracting data from it. The next set was writing a simple Tableau workbook in Python (basically making Python write XML). And now,  I'm using Python to extract a different set of data from the XML and return some info that can be used by our data analysts.

Each assignment has led to the next assignment which is usually comprised of minor adjustments and refactoring and some new code.

It's been fun and interesting, challenging and enjoyable.

So, I'm doing well with my new career. Hopefully, I will get hired full time. Not sure if I will. I'm trying not to get my hopes up. Sigh...

Sunday, March 1, 2015

First two weeks of work

So, I've been working at IMVU for two weeks. So far, it's been pretty good. I had a project where I had to use dictionaries AND it wasn't terrifying. I actually was able to get them to work and to work with them. I am not sure why I was so afraid of dictionaries, but now, I am happily using them. Also, it was my idea to use them, not my supervisor's. So, go me!

Work has been interesting. I have to stop comparing it to my last company, but it's hard to stop. I mean, we have weekly all hands' meetings. People's accomplishments are announced and celebrated. Oh, the free food is quite the perk as well.

What have I been working on? Honestly, I don't remember my first script except that I had to get Python and a shell script to talk to one another. I also had to figure out how to pass a SQL statement between them. Very interesting... oh, now I remember something about what I wrote. I had to read a bunch of SQL statements and partition them.

Second script dealt with working with XML files and cleaning them up of a certain tag. And then the latest sets of scripts dealt with determining which tables were used in which datasources and which tables were not used at all.

All these scripts have presented their own challenges, but I've been able to successfully meet those challenges and solve the puzzles. Also, I'm starting to learn how to communicate with a coder so that he can understand what I'm trying to say. I mean, we are both speaking English, but something gets lost in the translation between Marlene speak and coder speak.

Monday, February 16, 2015

Summing up... Some post-Hackbright thoughts

Hackbright finished on December 19th. Since that day, I've been trying to write a post about it, but obviously, failed in the attempt. I've got a ton of excuses as to why I didn't write such as the holidays, getting super sick (as in lying in bed, getting up, realizing that was a bad idea and went straight back to bed... and really, it was not just one day that I experienced this, it was multiple days... more on that later), looking for a job and going on a trip. So, let me start rambling on about the last few months.

Towards the end of Hackbright, I felt like I was catching the HB plague. I managed to fight it off. I also managed to interview at a couple of companies. One rejected me straight out, but I was ok with that as the company was in San Francisco, was a tech writing job and very far away from the Caltrain station. The other place I interviewed with was very near the Caltrain station. It was also more of a writing position than an engineering one, but the product was amazing. So was the salary.

A HB friend, Danielle, questioned why I was going for writing jobs and not a "real" engineering job. She encouraged me to go for an engineering position. And to be honest, I really didn't want to get stuck in a writing position for the rest of my career. The salary wasn't great, and I'm pretty sure I'd get bored fairly quickly. So, why wasn't I going for a "real" engineering job? I think part of it was because I didn't want to deal with a technical interview. I wasn't really paying attention to whiteboarding practice. I know I should have, but I am strangely against studying for whiteboarding.

Aside 1: Whiteboarding is supposed to show the process by which a candidate approaches the problem, a candidate's ability to work through a problem with or without help. and to demonstrate communication skills. It is not necessary to solve the problem. That is NOT the important part. The important part is what was just mentioned. So why the hell are there books about solving these problems? Knowing the answer to the typically asked questions does jackshit to show how a candidate can think and so forth. - end of Aside 1.

At any rate, two interviews down and no technical/whiteboarding interview. AND I didn't have a clue about what type of engineering I wanted to do. Front end was ok. I learned a bit of JavaScript for the 2nd company. I started to actually hate HTML less. Bootstrap was ok. In thinking about my project, I have to say that writing the data model using SQL and SQLalchemy was the best part. Pity that was only about a day and a half of my project. HB friend, Julie, encouraged me to find a data engineering position.

Hackbright finished, the holidays were good, but my stomach started doing that sick thing and then I caught a cold. Around this time too, my body just crashed. I was exhausted after living on adrenalin for so many weeks. I stayed in bed for numerous days. On the one hand, the cats were happy to have me home and to provide a comfortable spot for them to sleep and warmth too. On the other hand, it really sucked staying in bed because dammit, I needed to find a job! Also, I needed to study other languages like JavaScript, or maybe I should study Hadoop... Dear Lord, give me something to focus on! I didn't know what to study first or second or at all. So, I didn't study much of anything and just enjoyed the holidays as much as possible and get better.

Now, I knew I needed a job by February. That's when it would become imperative for me to find a job to get $$ flowing back into the bank account. A friend who has an unfunded start up asked me to do some work on her website using the Brandcast tool. I'm not a fan of Brandcast yet, mostly because I didn't have enough control over what was appearing on website. After learning how to control the appearance of a page using CSS, HTML and Bootstrap, using a drag and drop tool to build a site drove me nuts. Oh, no money on this job, just experience and learning a new tool. Also, if she gets funding and her company off the ground, I could potentially get a founder's credit.

Aside 2: I was advised to run from this friend's job for a few reasons. 1) No money. 2) Working for or with a friend can really damage that friendship. Both are good pieces of advice that I didn't listen to. - end of Aside 2.

Now, I did do some work on the friend's site. I haven't heard back from her in quite some time, so I have no idea where it stands.

In the mean time, I did a writing test for that one company nearer to the train station. I'm left wondering if it would be good to pursue this job as it is in San Francisco (craptastic commute!) and it's writing. Despite the fact I'd be using JavaScript, I didn't know how marketable I would be if I ever decided to leave that company and go to another. Would I be stuck doing tech writing/teaching for the rest of my career. - Danielle's voice in the back of my head was saying, "Go for a 'real' engineering position!"

I also was in touch with one of my pottery customer. This customer, Mrs. C, well, she's been a friend for a while and she knew all about my issues with my previous job. Mrs. C would encourage me and just listened to my whining. She also would tell me to check out her son's company which was a direct competitor to my last company. Mrs. C told me that if there was ever a position open, she would put me in contact with her son and he'd be sure to get my resume to the right person. So, I would check out the company, but never found any open art positions. But now, I was an engineer. I looked at the company website and there it was, an open Data Engineer position. So, I tell Mrs. C that there is a position I'm interested in. She gives me her son's email addresses. I send off an email of questions and later my resume.

Aside 3: Ok, how's this for coincidence. Mrs. C likes my pottery, we become friends. She is Chinese, her husband is white. She has a son named Chris who went to University of Pacific. Now, I have a cousin named Christopher, who is half white, half Japanese and was going to University of Pacific. 

During the holidays, before I found a job, I went to dinner with my parents at Pasta Pomodoro. Mrs. C is there at the same. We wave to each other, she comes over and brings her son over too. I get to meet Chris in person. I also introduce my parents to Mrs. C. Lo and behold, her dad and my dad have the same first name. Whaaaaaat??? - end of Aside 3

I did get a phone interview with Chris' company, IMVU. I spoke with HR and it went well. Now, they had already filled the data engineer position, but HR thought I'd be good as a junior data engineer or maybe an intern. In other words, if IMVU thought I'd be a good fit and could contribute to them, IMVU would create a position for me.

I sent panicked texts to former co-workers because OMG this is a competitor company. Are they really interested in me as an engineer or is it just because I worked for Meez? I'm feeling a bit unsure of myself. I also get a rejection from that company close to the Caltrain station and holy crap, what if I don't get anywhere with IMVU because I only really applied to two companies...

Aside 4: Actually, I did sign up with jobspringpartners.com, a recruiting/placement agency. even went in to their office in SF to get interviewed. I'm kind of annoyed with their San Jose office because that office never got in touch with me even though I applied to a number of positions controlled by that office. At any rate, nice people, but they didn't help me find a job.

Also, there was an opportunity in Long Island that my friend tried to get for me. Unfortunately, that one didn't pan out. - end of Aside 4.

A week later, I talk to the lead engineer who is going through my Github page for glazehub.com. The call was supposed to last an hour or so, but it didn't take that long. He asked me questions about my experience - I was completely honest about my level of experience but told him I could quickly pick up stuff... look at what I did at Hackbright!

About a week after that, I get called in for an in person interview. Yes, I had to face the dreaded whiteboarding/technical interview! Thank goodness I reviewed the SQL lesson, Skills 1 and Skills 2 before my interview, because that is what I got asked. And really, it wasn't all that hard. One of the interviewers was impressed that I could write the code I could write especially considering I had just started serioulsy coding 3 months prior.

So what was the result of all this? Well, I was offered a 3 month contract as a Data Engineering Consultant. I will be paid hourly (about $0.53 more per hour than my last job) and I could be considered for a full time position after 3 months. At the end of two months, I'll probably have an idea if they wanted to keep me on at the end of my current contract.

Yes, a long winded tale of my post Hackbright life. Can you see why it took me so long to write? I kind of wanted to wait til I had a job before I wrote about it all. I probably should have written sooner as then this post would be a lot shorter.

Now, I know a number of my HB friends applied to a shit ton of companies. I did not. For me, I decided that it was better for me to be focused and limited. I didn't want to just apply willy-nilly. I had three main considerations in mind: commute, salary and product. I was willing to make sacrifices on any one of the three depending on how good the other two were. So, I only really got somewhere with two companies. And I definitely networked my way into IMVU. Since IMVU is not a partner company to Hackbright, I won't be getting $3000 back, but I'm ok with that. I have a job closer to home. I beat the average of 3 months to get a job post-Hackbright. I am being paid less than the average post-Hackbright salary, but I'm a contractor. I will consider my true salary if I get hired on full time.

So, that's my summary of what I've been doing for the past 2 months since Hackbright finished. I have a few other thoughts about the program and what I'm doing. But that will have to be another blog post.

Sunday, December 7, 2014

Hackbright - the Last Official Week

So, we've finished up our projects. We've had our Career Day where we pitched ourselves as engineers to a bunch of different companies. Now, we have to find jobs. The last part is easy, right?

Ha!

I'm not really sure what to write today. Yes, Marlene of the many words is at a loss. All I know right now is that I don't want to commute anymore. I've been told not to limit my job choices by location, but I think that is bullshit. Why did I even try Hackbright if I didn't think it would get me a job closer to home? I've been told that sacrifices have to be made if I want to get where I want to go. I think that I've sacrificed enough. I'm not twenty-something anymore and I do NOT want to have a commute longer than one hour one way.

What do I want to do? No idea.

For right now, I just want to get my app to send a prettier email. I want to rebuild my database so I can deploy my app (POSTGRES, here I come!). And, I want to finish up my pottery commissions.

And I want my freaking internet to not suck as much as it has sucked in the last 2 days.

I'm sure I'll write something more positive in the days to come. Right now, I'm going through this whole: you've accomplished something awesome! What's next??? Get a job! or Accomplish something else!

Oh, and I'm going to apply to a company that has an interesting product and a job that I can totally do. It's just that it's in SF and has a very "bro" culture right now (most of the engineers are from HackReactor... also, no female engineers).

Should be interesting

Monday, December 1, 2014

Mock presentation is done. Here! Look at some screen caps :D

Why was I nervous? Why could I not remember my narrative? Sigh...

Ok, so here are a few things I need to remember when I present:
  1. Talk about my whole background, not just pottery. Remember to talk about UCLA and my math degree. Also, remember to talk about my time as a 3d Artist. Then, the pottery as a way to get into my project.
  2. Demonstrate different parts of GlazeHub.
    • Point out the list of User Recipes
    • Show my Data Model Screen Cap (talk about Clay Planet)
    • Demonstrate Add Recipe Function
    • Demonstrate Edit Recipe Function
    • Show the Order page, and hit email - show email sent screen cap! 
  3. Make sure to say that Glaze Hub will be deployed and that the application is up the the specifications that the CEO of Clay Planet described.
Aside from all that, it was a great feeling to have Dan tell me that he thinks my app is a strong product. Huzzah!

Oh, here are some screen caps:

Data Model

The Welcome Page

  
The Login Page

The Index Page


The Enter Recipe Page (for non-logged in users). 
Looks about the same as the Add Recipe Page for logged in users

A Saved Recipe Page... Look! You can calculate a batch size in kilos or pounds!


The Ordering Page... You can even send a message with your order


I'm pretty excited that this is a viable app. Next step: trying to deploy it and make sure that the numbers I've added up are added up and multiplied and stuff, correctly!


Sunday, November 30, 2014

MVP is done!

Yes. I have accomplished what I set out to do. My Glaze Hub application is running. It's not deployed yet, but it will be soon. Hopefully, by the end of the week.

Now, just because I have my MVP (minimum viable product) done, doesn't mean I am done with Glaze Hub. There area few things left that I want to do:

  1. Add a Facebook/Twitter/Instagram or Pinterest login feature
  2. Allow users to upload photos
  3. Encrypt the passwords
  4. Set up a retrieve password function
  5. Set up PayPal or other such payment system.
Seems like a lot, doesn't it. Honestly, I don't think it is considering what I started with and what the application has ended up being.

In terms of technologies, well, I used what I feel to be very basic tech. Python, JavaScript, JSON, HTML, CSS, Bootstrap, SQLAlchemy. None of this feels very advanced to me, but it was a lot. So many pages of HTML, 4 Python scripts, one JavaScript script. It was a lot.

I think I need to look at my code to see where I can consolidate and refactor, make it prettier and cleaner. Eventually, I'll have to change the code to make it more efficient too. Especially the update function on the recipes.

How am I feeling? Well, I'll have to let you know tomorrow. I signed up to give my presentation first. At 10 am. I have to draw up my data model. Make it pretty and use the Glaze Hub header. Oh, maybe I should screen cap that and write it up. Or, I can do it tomorrow when I get to Hackbright. I'm kind of leaning toward that as I just want to do nothing tonight.

Wednesday is Career Day. I'm not nervous. Yet. I am sure I will be as the day gets closer. But, for right now, I'm not.

I'm kind of wondering what kind of app to make next. Maybe I'll try to make a JavaScript game. That might be fun. I think I'll take my JavaScript book with me to HB tomorrow so I can study up on that and clean up my app a bit. Get a better handle on Bootstrap and such.

Also, I shall start thinking up some designs for some clay. I think I can finally make some new pieces for the next firing this week, especially after Career Day.

I get to do art again. Can't wait.

Sunday, November 23, 2014

Nearing the end...

Project project project. I haven't been blogging because I've been too busy trying to get my project working.

Bits and pieces work. Bits and pieces do not work. Some things are happening (like if I use the same name on a recipe, it remembers what I had before and adds those old components to the new ones. Go figure). So much to debug.

And next week is Thanksgiving. We have 3 days to finish up with the help of instructors. The holiday where I hope to be working on just the cosmetics of my app. Two more days of help with a lecture on salary negotiation thrown in.

No, not panicking yet.

Here's what works:
  • The login/logout
  • The calculate recipe components if you are logged in

What is partially working (like more than 50%)
  • The add recipe and add components page(which is one page)
What is partially working (less than 50%)
  • The calculator page
 What else needs to be done:
  • Adding the price quote
  • Adding an order button
  • Saving the recipe if you are in the calculator page and are logged in. Although, why you would not just be in the add recipe page if you are not logged in is beyond me. I might just not add that save feature
  • Editing the recipe and comments
  • Encrypting the password
  • Debugging the crap out of this app!
 Ok. Some of that I will be able to do tomorrow. I think the price quote isn't too hard. That is all backend. Also, I just need to figure out where to place the quote with the Clay Planet logo... dear God, I hate front end. The rest of it is mostly variations of what is  already there and I need to figure out how to adjust them. I think that once I figure out how to keep the data from the option menus on the Calculate page, I'll be able to get the edit recipe page done. Then, it will be a matter of saving the recipe as a new recipe or overwriting it.

I can do this...
Right?